草庐IT

java - 带前导零的 Int - 意外结果

给定以下示例:publicclassMain{publicstaticvoidmain(String[]args){System.out.println(1234);System.out.println(01234);}}输出是:1234668为什么? 最佳答案 这是因为带前导零的整数文字是八进制整数(以8为底):1*8^3+2*8^2+3*8+4=668 关于java-带前导零的Int-意外结果,我们在StackOverflow上找到一个类似的问题: htt

java - 使用 java 生成 int 数组的排列——错误

我正在编写一个JAVA代码来生成整数数组的所有排列。虽然我得到的排列数是正确的,但排列本身并不正确。在运行时我获得:InputarrayLength31230Permutationis1,2,3,##########################1Permutationis1,3,2,##########################2Permutationis3,1,2,##########################3Permutationis3,2,1,##########################4Permutationis1,2,3,##############

java - 获取加起来等于给定数字的所有可能的总和

我正在为安卓开发一个数学应用。在这些字段之一中,用户可以输入一个int(无数字且大于0)。这个想法是获得所有可能的和,使这个int,没有double(在这种情况下为4+1==1+4)。唯一已知的是这个int。例如:假设用户输入4,我希望应用返回:43+12+22+1+11+1+1+1显然4==4所以也应该添加。关于我应该如何着手做这件事有什么建议吗? 最佳答案 这是一个声称可以做到这一点的简单算法来自:http://introcs.cs.princeton.edu/java/23recursion/Partition.java.ht

java - 如何在 Java 中自动裁剪图像的白色边框?

在Java中自动裁剪图像中的白色边框的最简单方法是什么?提前致谢... 最佳答案 这里有一种裁剪所有4个边的方法,使用最左上角像素的颜色作为基线,并允许颜色变化的容差,这样图像中的噪声就不会使裁剪变得无用publicBufferedImagegetCroppedImage(BufferedImagesource,doubletolerance){//Getourtop-leftpixelcolorasour"baseline"forcroppingintbaseColor=source.getRGB(0,0);intwidth=so

Java : Sort integer array without using Arrays. 排序()

这是我们Java类(class)中一项练习中的说明。首先,我想说我“做好了功课”,我不只是懒惰地要求StackOverflow上的某人为我回答这个问题。在所有其他练习中,这个特定项目一直是我的问题,因为我一直在努力为此寻找“完美算法”。WriteJAVAprogramthatwillinput10integervaluesanddisplayeitherinascendingordescendingorder.Note:Arrays.sort()isnotallowed.这是我想出的代码,它可以工作,但有一个明显的缺陷。如果我输入相同的值两次或更多次,例如:5,5,5,4,6,7,3,

java - 仅对正值进行排序,并保留负值及其索引,因为它属于数组

我只需要为正值按升序对数组进行排序。对于负值,索引位置将保持不变。如果数组是:int[]inputArray={-1,150,190,170,-1,-1,160,180}。输出应该是这样的-int[]outputArray={-1,150,160,170,-1,-1,180,190}。但在我的例子中输出这是-int[]outputArray={-1,150,170,190,-1,-1,160,180}。下面是我的代码:publicstaticvoidmain(String[]args){int[]inputArray={-1,150,190,170,-1,-1,160,180};int

java - int[] 和 Integer[] 数组 - 有什么区别?

考虑以下基础知识:任何对象都只存在于堆中,ArrayIS-AObject和IntegerIS-AObject我发现自己很难回答这样一个简单的问题:int[]和Integer[]insideofJVM之间有什么区别吗?或者它只在“编译时”有意义? 最佳答案 运行时存在差异。int[]是原始int值的数组。Integer[]是一个“对象”数组,包含对Integer对象的引用。最重要的实际区别:int[]不能保存null值。ButI'mstillconfused:doesint[]storejustaprimitivevalues?Ifs

java - - ->- - Java 中的运算符

我想知道,-->--运算符在Java中有什么作用?例如,如果我有以下代码:intx=3;inty=3;if(x-->--y){returntrue;}这总是返回真。谢谢! 最佳答案 在Java中,-->--实际上不是运算符。你写的其实是if((x--)>(--y))。而且,正如我们从thisanswer中了解到的那样,--y是前减量,而x--是后减量,因此,这基本上是if(3>2),它始终返回true。 关于java--->--Java中的运算符,我们在StackOverflow上找到一

java - 如果对 int 变量的写入和读取是原子的,为什么需要 AtomicInteger?

我读过Oracledocs那:Readsandwritesareatomicforreferencevariablesandformostprimitivevariables(alltypesexceptlonganddouble).(我猜这个特性已经被添加到一些新的JDK版本中,因为我曾经认为所有原始变量的读/写都不是原子的)这是否意味着AtomicInteger已被弃用并且不应在新项目中使用? 最佳答案 虽然从普通int中单个存储或单个加载在Java中是原子的,但您不能以原子方式递增它.这样做需要您首先加载该值,然后根据它计算新

java - 更有效地检查 int 是否为素数

我最近参加了学校的小型Java编程竞赛。我和我的搭档刚刚完成了我们的第一个纯oop类(class),大部分问题都超出了我们的范围,所以我们选择了这个(我稍微解释了一下):“给定一个输入整数n返回下一个素数int和它的反面也是质数,例如,如果n=18,您的程序应该打印31",因为31和13都是质数。然后,您的.class文件将传递一个包含1-2,000,000,000之间所有可能数字的测试用例,并且它必须在10秒内返回正确答案才能被视为有效。我们找到了解决方案,但如果测试用例较大,则需要10秒以上的时间。我相当确定有一种方法可以将循环范围从n,..2,000,000,000向下移动,因为