举个例子:
假设我有班级电话Gun.我有另一个班级电话Bullet.
Class Gun有一个ArrayList Bullet.
迭代通过Arraylist ...而Gun不是这样做:
ArrayList<Gun> gunList = new ArrayList<Gun>();
for (int x=0; x<gunList.size(); x++)
System.out.println(gunList.get(x));
Run Code Online (Sandbox Code Playgroud)
我们可以简单地遍历ArrayList Gun:
for (Gun g: gunList) System.out.println(g);
Run Code Online (Sandbox Code Playgroud)
现在,我想迭代并打印出Bullet我的第三个Gun对象:
for (int x=0; x<gunList.get(2).getBullet().size(); x++) //getBullet is just an accessor method to return the arrayList of Bullet
System.out.println(gunList.get(2).getBullet().get(x));
Run Code Online (Sandbox Code Playgroud)
现在我的问题是:如何使用ArrayList迭代打印输出枪对象列表,而不是使用传统的for-loop?
当我们在学校学习C++时,我们的教授会告诉我们return 0;在主函数的最后一行代码中写一下,它被认为是一个很好的编程实践.
在Java中,我意识到有些人System.exit(0);在main方法的最后一行写道.
然而,在C++中,如果我使用exit(0);我受到我的教授的惩罚,因为(在学校)进行程序编程,我们应该让程序流到主要结束并让程序自然停止.
我的问题:Java是否System.exit(0);与C++相似return 0;?(或者它与C++类似exit(0))
System.exit(0)在不需要的时候在java中使用是不好的做法(即:在main方法的最后一行写它)?
做super.paintComponent(g)什么(特别是当我们将它放在paintComponent()方法中时)?我很惊讶我之前没有看到有人问这个问题.
我在Java Graphics上挖掘了我的学校笔记,它在这行代码中唯一提到的是"do not delete".
但是这几周我一直在练习和使用Java paintComponent()方法.到目前为止,我没有将该行包含在我的代码中,并且一切似乎都运行良好(到目前为止).所以..
问题:
我有以下Java代码来生成由零填充的数字.
DecimalFormat fmt = new DecimalFormat("000");
for (int y=1; y<12; y++)
{
System.out.print(fmt.format(y) + " ");
}
Run Code Online (Sandbox Code Playgroud)
输出如下:
001 002 003 004 005 006 007 008 009 010 011
我的问题是:如何使用填充空格而不是前导零生成数字?
1 2 3 4 5 6 7 8 9 10 11
注意:我知道StackOverflow中有几个问题需要在String中填充空格.我知道如何用String做到这一点.我想问是否可以用填充空格格式化NUMBERS?
在我迄今为止编写的所有程序中,如果我希望它在另一个工作站上工作,我只需复制并粘贴使其运行所需的可执行文件和必要文件(例如:.o文件,二进制文件......).
但是所有为商业用途而构建的程序总是带有安装程序.例如PC游戏.所以我的问题是:当我们只是将文件复制到目标工作站时,安装的主要好处/原因是什么?
- 其中一个原因可能是防止盗版.但除此之外,我确定还有其他更强的理由吗?
There are a few legal ways which can we declare a function in C++.
Some of the legal ways are:
void function ();
void function (void);
dataType function (dataType);
and so on...
Run Code Online (Sandbox Code Playgroud)
Recently, I came across a function declaration as such:
void (function) (); //Take note of the braces around the function name
Run Code Online (Sandbox Code Playgroud)
I have never seen somehting like this before, when I tested it in a C++ compiler, it runs without any warning or compilation errors.
My question is …
Java BufferedImage类有一长串类变量,称为图像类型,可用作BufferedImage构造函数的参数.
但是,Java文档对这些图像类型的用途做了最小的解释,它将如何影响要创建的BufferedImage.
我的问题是:
图像类型如何影响要创建的BufferedImage?它是否控制用于存储各种颜色(红色,绿色,蓝色)的位数及其透明度?
如果我们只想创建,我们应该使用哪种图像类型
我多次阅读Java Doc中的描述,但是我们不知道应该如何使用它.例如,这一个:
TYPE_INT_BGR
表示具有8位RGB颜色分量的图像,对应于Windows或Solaris样式的BGR颜色模型,其中颜色为蓝色,绿色和红色打包为整数像素.没有阿尔法.该图像具有DirectColorModel.当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述.
我正在写这个问题,使自己面临大规模否决投票的风险。但我仍然想冒险,因为我真的很好奇,我想知道大象的数量是多少。
2天前,有个新用户发了一个问题,关于如何判断一个数字是否是大象的数字?
他提到这是在他的采访中被问到的。
对于那些在删除之前看过这个问题的人,你能告诉我什么是大象号吗??
我有以下代码投入double到int:
double dblValue = 7.30;
int intValue = (int)(dblValue*100); //I want intValue to store extactly 730;
cout << intValue;
Run Code Online (Sandbox Code Playgroud)
输出: 729
I know that the compiler is reading dblValue as 7.2999999 before casting it to int.
Run Code Online (Sandbox Code Playgroud)
我的问题是:是否可以通过防止舍入错误将其强制转换为730?
如果您的解决方案避免使用C++ 11或其他预定义函数,那将是最好的.我在这里使用的唯一预处理器指令是<iostream>.
ArrayList<Integer> a =new ArrayList<Integer>();
ArrayList<ArrayList<Integer>> j =new ArrayList<ArrayList<Integer>>();
a.add(1);
a.add(2);
a.add(3);
for(int c=0; c<10; c++){
j.add(a);
}
j.get(3).add(1);
System.out.println(j);
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么这个代码为j的每个元素添加1而不是只有第三个元素,我该怎么做才能解决这个问题?