小编Jea*_*lea的帖子

Java:方法中的枚举参数

我有一个方法可以说:

private static String drawCellValue(
    int maxCellLength, String cellValue, String align) { }
Run Code Online (Sandbox Code Playgroud)

你可以注意到,我有一个名为align的参数.在这个方法里面,我将对if值是'left'还是'right'有一些if条件.将参数设置为String,显然我可以传递任何字符串值..我想知道它是否可能将Enum值作为方法参数,如果是,如何?

以防有人想到这个; 我想过使用布尔值,但我真的不喜欢它.首先,如何将真/假与左/右相关联?(好吧,我可以使用注释但我仍然觉得它很脏)其次,我可能会决定添加一个新值,比如'justify',所以如果我有两个以上的可能值,那么绝对不能使用布尔类型.

有任何想法吗?

java parameters methods enums

29
推荐指数
3
解决办法
10万
查看次数

Java:print_r?

上次我问这里如何填充数据结构.现在我想知道Java中是否存在某些东西,比如我在PHP中使用的print_r,它代表我在地图和列表中填充的内容而不必自己编写算法.

有任何想法吗?

java data-structures

18
推荐指数
4
解决办法
2万
查看次数

从阵列中均匀选择N个元素

我需要从数组中均匀地选择n个元素.我想最好的解释方法就是举例.

说我有:

数组[0,1,2,3,4]我需要选择3个数字.. 0,2,4.

当然,如果数组长度<= n,我只需要返回整个数组.

我很确定这是一个定义的算法,一直在尝试搜索,我看了一下算法简介,却找不到满足我需求的东西(可能忽略了它)

我遇到的问题是我无法找到一种方法将其扩展到任何数组[p..q],选择N个均匀元素.

注意:我不能只从上面的例子中选择偶数元素.

其他一些例子;

数组[0,1,2,3,4,5,6],3个元素; 我需要得到0,3,6个
数组[0,1,2,3,4,5],3个元素; 我需要得到0,2或3和5

编辑:

更多例子:
数组[0,1,2],2元:0,2
数组[0,1,2,3,4,5,6,7],5元:0,2,3或4,5 ,7

是的,我想总是包括第一个和最后一个元素.

编辑2:

我所想的是......第一个+最后一个元素,然后使用中值继续工作.虽然我在试图这样做时遇到困难/困惑.

我会看看你发布的算法.谢谢!

编辑3:

这是使用PHP的解决方案版本的incrediman解决方案.同时使用关联数组,同时保留键.

<?php

/**
 * Selects $x elements (evenly distributed across $set) from $set
 *
 * @param $set array : array set to select from
 * @param $x int     : number of elements to select. positive integer
 *
 * @return array|bool : selected set, bool false on failure …
Run Code Online (Sandbox Code Playgroud)

algorithm

9
推荐指数
1
解决办法
2487
查看次数

Java:StringBuffer&Concatenation

我在Java中使用StringBuffer将字符串连接在一起,如下所示:

StringBuffer str = new StringBuffer();

str.append("string value");
Run Code Online (Sandbox Code Playgroud)

我想知道是否有方法(虽然我没有从文档的快速浏览中找到任何东西)或其他一些方法来添加"填充".

让我解释; 每次我在字符串中添加一些内容时,我想在最后添加一个空格,如下所示:

String foo = "string value";
str.append(foo + " ");
Run Code Online (Sandbox Code Playgroud)

我有几个要追加的电话..每次,我想添加一个空格.有没有办法设置对象,以便在每次追加后自动添加空格?

编辑 -

String input
StringBuffer query = new StringBuffer();
Scanner scanner = new Scanner(System.in);
scanner.UseDelimiter("\n");

do {
   System.out.println("sql> ");

   input = scanner.next();

   if (!empty(input)) query.append(input);

   if (query.toString().trim().endsWith(";")) {
         //run query
   }
}
while (!input.equalsIgnoreCase("exit");
Run Code Online (Sandbox Code Playgroud)

我会使用StringBuilder,尽管grom建议,但这就是代码现在的样子

java concatenation stringbuffer

8
推荐指数
2
解决办法
3万
查看次数

Java:数组和向量

我习惯使用PHP,但最近我一直在使用Java,而且我正在努力解决这个问题.我想在Java中保存这个表示:

Array ( 
        ["col_name_1"] => Array ( 
                               1 => ["col_value_1"], 
                               2 => ["col_value_2"], 
                               ... , 
                               n => ["col_value_n"] 
                          ),
        ["col_name_n"] => Array ( 
                               1 => ["col_value_1"], 
                               2 => ["col_value_2"], 
                               ... , 
                               n => ["col_value_n"] 
                          )
)

是否有一种干净的方式(即没有脏代码)来保存这个东西在Java?注意; 我想使用字符串作为数组索引(在第一维度),我不知道数组的确定大小..

java arrays hashmap data-structures

7
推荐指数
3
解决办法
1093
查看次数

PHP最左边的数字

假设我有一个包含整数或浮点数的变量(因为整数可能会溢出到PHP中的浮点数).

我想运行一些操作来获取最左边的数字和其余的剩余数字.

为了更好地解释:

<?php

$x   = NULL;  //this will hold first digit
$num = 12345; //int

/// run operation


//outputs
//$x   = 1;
//$num = 2345;
var_dump($x, $num);

?>
Run Code Online (Sandbox Code Playgroud)

现在,我知道有办法做到这一点群众,如果你代表一个字符串的数字,但我试图避免的类型转换成一个字符串.

我可能寻找一个解决方案,其中包括位操作,但我是个主题中相当薄弱,所以我希望有人谁通常工作低水平也许能回答这个问题!

谢谢一堆.

php digits

6
推荐指数
3
解决办法
2870
查看次数

MySQL查找未使用的表

我正在使用一个数据库,不幸的是它有很多未使用的表,我正在尝试清理它。我正在尝试找到一种方法,让我可以 100% 确信不再使用特定表。

经过一番谷歌搜索后,我仍然找不到这样做的好方法。我只能使用以下命令告诉最后一次写入表(插入、更新等):

SHOW TABLE STATUS 或ls -lt在 mysql datadir 上运行(可以通过运行 SHOW VARIABLES LIKE 'datadir'; 找到)

你有什么其他的建议?

谢谢。

mysql mysql-management

6
推荐指数
1
解决办法
5923
查看次数

Git cat暂存文件到stdout

我已经在git中暂存了一个文件的部分,就像这样

git add --patch ./file
Run Code Online (Sandbox Code Playgroud)

我想将暂存文件的内容输出到stdout.

请注意,暂存文件和工作目录中的文件是不同的,因为我只暂存了部分文件.

git git-add

4
推荐指数
1
解决办法
1079
查看次数

将数据库数据存储在文件中?

我目前正在研究一个学校项目,在java中,我正在编写一个数据库应用程序.类似于MySQL监视器,您可以在其中输入查询并获得结果/等等.

在我之前编写的应用程序中,我使用数据库来存储数据,例如用户配置文件,设置等.显然,我不能使用数据库来存储从这个学校项目生成的数据,否则有什么意义呢?

我正在考虑将数据存储在文件中,但这是我现在脑海中唯一的想法,而且我有点干嘛...说实话,我不想开始敲打代码然后我发现这样做的更好方法.

因此,如果有人知道如何存储数据(如CSV?),或者对数据库应用程序如何在内部工作有一些知识,请你解释一下吗?

- 编辑:为了更清楚,我不能使用数据库引擎来存储数据,就这样说,我编写了一个简单的数据库引擎.像Galwegian,jkramer和Joe Skora所建议的想法正是我在寻找的.

java database file

2
推荐指数
1
解决办法
2990
查看次数