Tag: 布尔值

使用reflection更改布尔字符串值不起作用

我正在尝试Javareflection和内联字符串,并得出结果,我觉得令人困惑。 import java.lang.reflect.Field; public class HappyDebugging { public static void main(String[] args) throws Exception { defineTrueFalse(); System.out.println(“true is ” + true); // why is it “true is true”? System.out.println(“false is ” + false); System.out.println(true); System.out.println(false); System.out.println(“true”); System.out.println(“false”); System.out.println(“true is ” + Boolean.valueOf(true)); System.out.println(“false is ” + Boolean.valueOf(false)); System.out.println(“true is ” + Boolean.valueOf(“true”)); System.out.println(“false is ” […]

你如何使用Java制作真正的大型布尔数组?

当我尝试使用Java创建一个非常大的布尔数组时,例如: boolean[] isPrime1 = new boolean[600851475144]; 我可能会丢失精度误差? 太大了吗?

定义true,false,unset状态的最佳方法

如果您需要知道未设置布尔值的位置(例如,如果该未设置的值应从父值inheritance),Java布尔基元(以及其他语言中的等效项)显然是不够的。 实现这一目标的最佳做法是什么? 定义一个新的简单类,它能够表达所有三种状态或使用Java Boolean类并使用null来指示未设置状态?

检查字符串是否只是字母+空格?

我想编写一个传递字符串的静态方法,并检查该字符串是否仅由字母和空格组成。 我可以根据需要使用String的方法length()和charAt(i)。 我想的是以下内容:(对于伪代码抱歉) public static boolean onlyLettersSpaces(String s){ for(i=0;i<s.length();i++){ if (s.charAt(i) != a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) { return false; break; }else { return true; } } 我知道我的编码可能有错误,并且可能有更简单的方法,但请告诉我你的建议!

java:循环上两个布尔值(false,true)

这是一个风格问题。 我想循环两次使用设置为false的变量,然后设置为true。 其中哪一个更清楚: 一个) for (final boolean on : new boolean[] { false, true} ) { doStuffBasedOnABooleanFlag(on); } B) for (int i = 0; i < 2; ++i) { final boolean on = (i == 1); doStuffBasedOnABooleanFlag(on); } C)别的东西 编辑:墨菲的无意识解释定律开始发挥作用…我原来看起来像这样的用例而不是doStuffBasedOnABooleanFlag: for (final boolean on : new boolean[] { false, true} ) { JButton button = […]

类型不匹配:在while循环中无法从int转换为boolean

我刚开始学习java,试图找到答案,但我想我不够聪明。 我正在尝试编写一个数组,我从一些文件到另一个文件。 问题是当我试图制作“while”时,它说不能从int转换为boolean。 任何人都可以提出建议 先感谢您。 这就是我所拥有的: public void savethefile() throws IOException{ File file1= new File(“lala.ppm”); FileWriter save=new FileWriter(file1); save.write(tytul); while(i){ save.write(arraycomment[i]); i++; } save.close();

嵌套for循环中的if-else块 – 编译器声明我需要一个return语句

我该如何工作? 它说我需要添加一个return语句,但我有一个。 public boolean clockFactCheck(int a, int b){ for (int i = 0; i <= 276; i++){ for (int h = 0; h <= 55; h++){ if (a == i + 186 && b == h + 133){ return true; } else { return false; } } } }

如何比较布尔值?

以此为例(摘自Java正则表达式检查程序不起作用 ): while(!checker) { matcher = pattern.matcher(number); if(matcher.find()) checker = true; else year++; } 是否使用.equals(false)来检查Boolean checker的值是否重要? 我知道有一个相似的东西。 然而,显然这个问题涉及原始boolean而不是对象包装器Boolean ; 因此, .equals()将不适用。 另外, Boolean应该与Boolean不同吗?

为什么Boolean对象在Java中有公共构造函数?

Java状态中构造函数new Boolean(boolean value)文档: 注意:使用此构造函数很少是合适的。 除非需要新实例,否则静态工厂valueOf(boolean)通常是更好的选择。 它可能会产生明显更好的空间和时间性能。 如果是这样,为什么这个构造函数是公开的而不是弃用的? 是否有充分的理由使用此构造函数而不是Boolean.valueOf() ?

布尔值和== vs =

语言是Java。 鉴于这种: public static void main(String[] args) { Boolean b1 = true; Boolean b2 = true; int i1 = 1; if (b1 = true) //line 5 if (b1 == true} // line 6 我知道b1 == true是一个等价的测试,它将给出结果:true或false。 但是,在b1 = true ,我理解的是一个声明,除了在这种情况下它应该返回: b1 = true返回true,与== test完全相同? 你能解释一下原因吗? 谢谢!