小编use*_*460的帖子

如何遍历对象的ArrayList对象的ArrayList?

举个例子:

假设我有班级电话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?

java iteration arraylist object

44
推荐指数
3
解决办法
23万
查看次数

Java的System.exit(0); vs C++返回0;

当我们在学校学习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方法的最后一行写它)?

c++ java return exit

16
推荐指数
3
解决办法
1万
查看次数

super.paintComponent(g)做什么?

super.paintComponent(g)什么(特别是当我们将它放在paintComponent()方法中时)?我很惊讶我之前没有看到有人问这个问题.

我在Java Graphics上挖掘了我的学校笔记,它在这行代码中唯一提到的是"do not delete".

但是这几周我一直在练习和使用Java paintComponent()方法.到目前为止,我没有将该行包含在我的代码中,并且一切似乎都运行良好(到目前为止).所以..

问题:

  1. 它有什么作用?
  2. 我们什么时候需要使用它?
  3. 它通过在paintComponent()中编写它给我们带来了什么好处?

java graphics swing

16
推荐指数
1
解决办法
1万
查看次数

如何使用Java中的前导空格格式化数字

我有以下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

java formatting space padding

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

程序安装的好处和真正目的是什么?

在我迄今为止编写的所有程序中,如果我希望它在另一个工作站上工作,我只需复制并粘贴使其运行所需的可执行文件和必要文件(例​​如:.o文件,二进制文件......).

但是所有为商业用途而构建的程序总是带有安装程序.例如PC游戏.所以我的问题是:当我们只是将文件复制到目标工作站时,安装的主要好处/原因是什么?

- 其中一个原因可能是防止盗版.但除此之外,我确定还有其他更强的理由吗?

deployment installation installer windows-installer wix

11
推荐指数
1
解决办法
2844
查看次数

Unusual C++ function declaration

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 …

c++ prototype declaration function

10
推荐指数
1
解决办法
584
查看次数

如何决定使用哪种BufferedImage图像类型?

Java BufferedImage类有一长串类变量,称为图像类型,可用作BufferedImage构造函数的参数.

但是,Java文档对这些图像类型的用途做了最小的解释,它将如何影响要创建的BufferedImage.

我的问题是:

  1. 图像类型如何影响要创建的BufferedImage?它是否控制用于存储各种颜色(红色,绿色,蓝色)的位数及其透明度?

  2. 如果我们只想创建,我们应该使用哪种图像类型

    • 不透明的图像
    • 一个透明的图像
    • 半透明的图像

我多次阅读Java Doc中的描述,但是我们不知道应该如何使用它.例如,这一个:

TYPE_INT_BGR

表示具有8位RGB颜色分量的图像,对应于Windows或Solaris样式的BGR颜色模型,其中颜色为蓝色,绿色和红色打包为整数像素.没有阿尔法.该图像具有DirectColorModel.当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述.

java bufferedimage

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

大象号到底是什么?

我正在写这个问题,使自己面临大规模否决投票的风险。但我仍然想冒险,因为我真的很好奇,我想知道大象的数量是多少。

2天前,有个新用户发了一个问题,关于如何判断一个数字是否是大象的数字?

他提到这是在他的采访中被问到的。

对于那些在删除之前看过这个问题的人,你能告诉我什么是大象号吗??

c++ numbers

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

在C++中将double转换为int而不会出现舍入错误

我有以下代码投入doubleint:

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>.

c++ double int casting

7
推荐指数
2
解决办法
5597
查看次数

在java中向2d arraylist添加元素

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而不是只有第三个元素,我该怎么做才能解决这个问题?

java arraylist

6
推荐指数
2
解决办法
5311
查看次数