一个代码小问题(初学者)

问题描述

packageit.java.exciseday03;importjava.util.Scanner;publicclassExcise03{publicstaticvoidmain(String[]args){longa,b=0,sum=0;intn;@SuppressWarnings("resource")Scanners=newScanner(System.in);System.out.println("请输入数字a的值:");a=s.nextLong();System.out.println("请输入相加的项数:");n=s.nextInt();inti=0;while(i<n){b=a+b;sum+=b;a=a*10;++i;}System.out.println("要求的结果为:"+sum);}}这个里面的++i,用i++换可以吗?

解决方案

解决方案二:
这里可以,完全没有问题这种问题,楼主可以自己在eclipse里面试试
解决方案三:
可以。i++是在这个语句之后(使用完i之后)进行+操作,++i顺序执行(先将i进行+之后再使用i)
解决方案四:
引用1楼magi1201的回复:

这里可以,完全没有问题这种问题,楼主可以自己在eclipse里面试试

嗯。我试了,是可以就是想问问大家确定下。毕竟初学者==。。。
解决方案五:
引用2楼crazypandariy的回复:

可以。i++是在这个语句之后(使用完i之后)进行+操作,++i顺序执行(先将i进行+之后再使用i)

OK,懂了。
解决方案六:
这个一般是涉及到j=i++;和j=++i;的时候有区别楼主的这个例子,效果上就没有什么区别了。
解决方案七:
不使用赋值语句的话,i++和++i没啥区别
解决方案八:
可以换,起到的作用是一样的,但是i++是先将i赋值再将i加1,;++i是先将i+1赋给i,在进行其他运算。
解决方案九:
可以,虽然i++和++i的概念不同,但是在你没有引用i的情况下都是只是i+1
解决方案十:
引用6楼Android_iPhone的回复:

不使用赋值语句的话,i++和++i没啥区别

正解...
解决方案十一:
举个例子,比如i的值是2,如果是++i,就是先把i的值增加为3,然后再进行其他操作,i++是i先取2进行操作,操作完了之后再增加为3。他俩的区别主要体现在表达式计算中。在本例的循环语句中,他俩是可以换的。
解决方案十二:
在你这种情况下是可以的,++i是先加,i++是后加。
解决方案十三:
也就是赋值的时候有区别,试一下j=++i和j=i++的区别就懂了,分别输出一下
解决方案十四:
受教了
解决方案十五:
自己输代码试下就更清楚了。
解决方案:
在这里可以的!!
解决方案:
最好自己测一下,这样更清楚,记的牢
解决方案:
可以的,你可以自己多试试
解决方案:
可以的!!!只是表达式的值有区别,i本身的值都会自增1!
解决方案:
要上机亲测,非常简单。
解决方案:
这里是没有问题的,楼上都说的很清楚啦
解决方案:
i++和++i只有在给赋值的时候不同,其他时候都一样吧。
解决方案:
可以只是值会有变化,具体代码如下:publicstaticvoidmain(String[]args){inti=1;System.out.println("i++的结果:"+(i++));//输出1,会导致先输出1,然后执行自加System.out.println("===============================");i=1;//必须重置原有值.-----!!!!如果这里不重置,下面一行将输出3.System.out.println("++i的结果:"+(++i));//如果上面没清空,这里将输出3,如果上面执行了重置,将输出2.执行的是:先加之后在输出}

解决方案:
可以的。++i和i++;在这里没什么区别。如果是赋值的话就有问题了。++i;是先自增1再赋值,而i++;是先赋值再增加1;
解决方案:
++i是先加1,再返回,返回的值是i+1;i++是先返回,再加1,返回的是i
解决方案:
++i,i++是两个不同的概念,一个是先加,一个是后加,循环里还是i++吧
解决方案:
必须可以的,没问题
解决方案:
看回复也好有意思昂,i++和++i是不同的,在进行赋值时i++相当于a=i;i=i+1;,++i相当于i=i+1,a=i;在你这条语句中i++和++i虽然增加方式不同,但是结果是一样的。所以没问题的
解决方案:
可以的没问题的,因为i的取值在while循环里,完全没有问题
解决方案:
可以,++i,效率高
解决方案:
可以,这里没有赋值,也没有将i传递到别的方法,这种没有区别
解决方案:
我觉得没问题,一句单独的i++是没有先手顺序的区别。

时间: 2024-07-30 04:41:46

一个代码小问题(初学者)的相关文章

日历-求帮写一个java小程序

问题描述 求帮写一个java小程序 读取txt文件,文件中有一个8位的日期(任意),读出并打印此日期开始的一个月日历 解决方案 String s="20160221"; SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd"); try { Date startDate=sdf.parse(s); Calendar c2=Calendar.getInstance(); Calendar c=Calendar.getI

问题-刚开始学习java ,自己写了一个聊天小程序,没报错但是有毛病,希望能帮忙问一下

问题描述 刚开始学习java ,自己写了一个聊天小程序,没报错但是有毛病,希望能帮忙问一下 刚开始学习java ,自己写了一个聊天小程序,没有报任何错误.测试时打开3个聊天小窗口 A,B,C,在A中输入文字,只在B中显示出来了,而且显示出了三句相同语句.查了好几个小时都没有查出来,希望高手能帮帮忙,看看是怎么回事,并且告诉我是通过什么方法找出来的. 以下是客户端和服务器端代码 客户端: import java.awt.*; import java.awt.event.*; import java

android-安卓继承的一个基础小问题

问题描述 安卓继承的一个基础小问题 我写了一个标准接口 public interface ISocketResponse { public abstract void onSocketConnectSucc(String msS); } 然后我写了2个接口实现 public class UsbSerial implements ISocketResponse { public void onSocketConnectSucc(String msS) {} } public class Bluet

探索RxJS - 做一个github小应用

本文是一篇 RxJS 实战教程,利用 RxJS 和 github API 来一步步做一个 github 小应用.因此,文章的重点是解释 RxJS 的使用,而涉及的 ES6语法.webpack 等知识点不予讲解. 本例的所有代码在 github 仓库:rxjs-example 首先要注意的是,目前在 github 上有两个主流 RxJS,它们代表不同的版本: ReactiveX - rxjs RxJS 5 beta 版 Reactive-Extensions - RxJS RxJS 4.x 稳定版

java-如题比如我下了一个JAVA小游戏源代码照着写就能运行了吗

问题描述 如题比如我下了一个JAVA小游戏源代码照着写就能运行了吗 比如说俄罗斯方块,五子棋 等我该注意什么问题呢,大神们我知道我的问题对你们来说都是小问题,新手求科普 解决方案 看来你还没有做过游戏方面的东西吧.一般而言,游戏不止有代码,同样的还必须有图片资源,你想一下不然游戏的美工不就只有喝西北风了!!当然也有例外,比如你完全只是调用一些简单的几何图形函数就不会用到图片资源.但是这种游戏几乎没有!所以你要看代码中调用图片资源没有,如果有,还要找到图片资源,同时还要看用到其他的库没有,如果用到

一个ICO小图标 百度给你全新体验

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 最近我们在使用百度搜索引擎的时候,输入关键词查询后,在百度给出的搜索结果的标题前出现了一个ICO小图标.在我们感到惊奇的时候,百度已经悄悄地提升了用户体验度.作为中国最大的搜索引擎,百度搜索结果中推荐的网站排名一直饱受诟病,许多钓鱼网站甚至通过SEO优化到百度的首页第一条.当前,ICO小图标的出现,虽然不能使百度从这些诟病中彻底走出来,但至少

tabs-设置一个带小三角形的选项卡

问题描述 设置一个带小三角形的选项卡 我想在程序中把选项卡像以下案例显示,选项卡图像下面有一个小三角形.有实现的方法吗?使用代码或文字形式都可以. 解决方案 <?xml version=""1.0"" encoding=""utf-8""?><selector xmlns:android=""http://schemas.android.com/apk/res/android"&

一个数组小练习编译通过,运行出错!

问题描述 一个数组小练习编译通过,运行出错!在myeclipse上没有显示错误信息代码如下,请协助!packagepart1;publicclassTestArray{publicstaticvoidmain(String[]args){if(args.length<3){System.out.println("errorlength,pls.re-enter!");System.exit(-1);}doubled1=Double.parseDouble(args[0]);dou

【AngularJS】—— 3 我的第一个AngularJS小程序

首先要注意的是,引用AngularJS的资源文件angular.min.js文件. 由于这个框架是Google的工作人员开发的,因此国内访问的时候,会被墙导致无法下载资源文件. 因此,可以使用百度开源的静态链接: http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js 代替原来的国外的资源文件链接:http://code.angularjs.org/angular-1.0.1.min.js 解决了资源文件的下载问题,就可以手动编写小