我有两个不同的字符串,但在解析为UUID后,它似乎是相同的
public static void main(String[] args) {
try {
UUID t1 = UUID.fromString("38e1036d-7527-42a3-98ca-f2f19d3155db");
UUID t2 = UUID.fromString("123438e1036d-7527-42a3-98ca-f2f19d3155db");
System.out.println(t1.toString().equals(t2.toString()));
} catch (Exception e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样吗?
Java 9提供了获取信息的漂亮方式Process,但我仍然不知道如何获取进程的CommandLine&arguments:
Process p = Runtime.getRuntime().exec("notepad.exe E:\\test.txt");
ProcessHandle.Info info = p.toHandle().info();
String[] arguments = info.arguments().orElse(new String[]{});
System.out.println("Arguments : " + arguments.length);
System.out.println("Command : " + info.command().orElse(""));
System.out.println("CommandLine : " + info.commandLine().orElse(""));
Run Code Online (Sandbox Code Playgroud)
结果:
Arguments : 0
Command : C:\Windows\System32\notepad.exe
CommandLine :
Run Code Online (Sandbox Code Playgroud)
但我期待:
Arguments : 1
Command : C:\Windows\System32\notepad.exe
CommandLine : C:\Windows\System32\notepad.exe E:\\test.txt
Run Code Online (Sandbox Code Playgroud) 我有一个MyModel班级和一个班级List<MyModel>
public static class MyModel{
private int left;
private int right;
private int state = 0;
public MyModel(int left, int right, int state){
this.left = left;
this.right = right;
this.state = state;
}
public int getLeft() {
return left;
}
public void setLeft(int left) {
this.left = left;
}
public int getRight() {
return right;
}
public void setRight(int right) {
this.right = right;
}
public int getState() {
return state;
}
public void setState(int state) { …Run Code Online (Sandbox Code Playgroud) 我的应用程序使用CRC32检查两个内容或两个文件是否相同.但是当我尝试使用它来生成唯一的id时,我看到了问题,使用两个不同的字符串,CRC32可以是相同的.这是我的Java代码.提前致谢.
public static String getCRC32(String content) {
byte[] bytes = content.getBytes();
Checksum checksum = new CRC32();
checksum.update(bytes, 0, bytes.length);
return String.valueOf(checksum.getValue());
}
public static void main(String[] args){
System.out.println(getCRC32("b5a7b602ab754d7ab30fb42c4fb28d82"));
System.out.println(getCRC32("d19f2e9e82d14b96be4fa12b8a27ee9f"));
}
Run Code Online (Sandbox Code Playgroud) 我正在使用JTable做一个项目,我想让我的表格单元格可编辑.我用了,
public boolean isCellEditable(int row, int column)
{
return true;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,单元格是可编辑的,但是一旦将数据输入一个单元格并继续进行下一个单元格,之前的数据就会被删除...好吧任何人帮我...
String[] directions = {"UP","DOWN","RIGHT","LEFT"};
String input = "DOWN 123 test";
Run Code Online (Sandbox Code Playgroud)
有没有办法检查输入字符串是否在方向上以一个值开始而不使用拆分输入值?
尝试执行此代码时出现以下错误,但我不知道为什么。它似乎与使用StringBuffer并附加到它有关。
代码:
class Stock {
static String findStock(int[] arr) {
int flag = 0;
int begin = 0;
int start = 0;
int endIndex = 0;
boolean foundStart = false;
StringBuffer op = new StringBuffer();
while (flag != 1) {
//find start
for (int i = begin; i < arr.length - 1; i++) {
if (arr[i + 1] > arr[i]) {
start = arr[i];
endIndex = i;
foundStart = true;
break;
}
if (i == arr.length - 1) {
flag …Run Code Online (Sandbox Code Playgroud)