首页 > 编程语言 > 详细

Java笔记

时间:2018-07-19 15:51:28      阅读:595      评论:0      收藏:0      [点我收藏+]

-- 001 010 011 100 101 110 111
-- 1、Java提供扩展赋值操作符:+=(加法赋值)、-=(减法赋值)、*=(乘法赋值)、%=(取模赋值)
-- 2、boolean类型变量可以存储值true或false。
-- 3、关系操作符(<、<=、==、!=、>、>=)产生一个布尔值。
-- 4、选择语句用于可选择的动作路径的编程。选择语句有以下几种类型:单分支if语句、双分支if-else语句、嵌套if语句、多分支if-else语句、switch语句和条件表达式。
-- 5、各种if语句都是基于布尔表达式来控制决定的。根据表达式的值是true或false,这些语句选择两种可能路径中的一种。
-- 6、switch语句根据char、byte、short、int或者String类型的switch表达式来进行控制决定。
-- 7、switch语句中,关键字break是可选的,但它通常用在每个分支的结尾,以中止执行switch语句的剩余部分。如果没有出现break语句,则执行接下来的case语句。
-- if("y".equals(ys) && zongjine<200) (ps: if语句里面对字符串String类型判断不能直接用==,应该用equals函数)
-- System.exit(0); // 正常退出Java应用程序(Java Application)
-- { 使用switch 结构时的注意点
1. switch 后的表达式可以是整形、字符型、String型
2. case 后的常量表达式的值不能相同
3. case 后允许多条语句,不需要大括号。(但是switch的整体结构需要大括号包裹)
4. 如果不添加break语句,需要特别注意执行顺序
5. case和default子句的先后顺序可以自行变动
6. default子句可以省略
}
-- while语句的三要素:1. 循环变量 2. 循环条件 3.循环的更新
-- 求某个数字的最低位就是进行对10求余数
-- 求某个数字的最低位后删除最后一位的数字是进行对10求除法
-- System.out.println(password.length()); 打印长度
-- 设X年后达到2000亿
-- 循环条件 ( 初始值、条件、更新 )
-- String str = String.format(.....);
--{
system.out.println(Str);
--}(ps: 打印结果简洁化)·
--{
boolean k = false;
while (k=false)
system.out.println("循环体语句")
} (该循环体语句一次也不执行)
--{
int n= 0;
while (n++<=2) ;
System.out.println(n);
} (ps: answer = 4)
--{
double item = 1;
double sum = 0;
while(item != 0 ) {
sum += item;
item -= 0.1;
}
System.out.println(sum);
}(ps: 没有打印结果,进入死循环!)
-- 在循环控制中,不要使用浮点型来比较值是否相等!
--Java中产生随机数的几种方式,随机数的概念从广义上讲,有三种:

1、通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字。
【PS:这个方法返回一个从1970年1月1号0点0分0秒到目前的一个毫秒数,返回类型是long,我们可以拿它作为一个随机数,拿它对一些数取模,就可以得到我们想要的一些范围内随机数】

2、通过Math.random()返回一个0到1之间的double值。
【PS:这个产生的随机数是0-1之间的一个double,我们可以把他乘以一定的倍数来得到想要的效果,比如说乘以10,他就是个10以内的随机数】

3、通过Random类来产生一个随机数,这个是专业的Random工具类,功能强大。
【PS:我们可以通过新建一个Random的对象来产生随机数,他可以产生随机整数、float、double、long型随机数】
--播放音乐代码:
{
import java.applet.Applet;
import java.applet.AudioClip;
import java.io.File;

public static void main(String[] args) throws MalformedURLException
{
File sound1 = new File("sounds/音乐文件名.wav");
AudioClip sound_choose = Applet.newAudioClip(sound1.toURL());
sound_choose.play();
}
}
--随机数字公式 (a-b)(随机数是一个double类型的数,需要强制转换int型)
{
(int)(Math.random()*10000)% (b-a+1) +a
}
--音乐开始和暂停
{
sound_choose.play();
sound_choose.stop(); (ps: 在音乐播放之前插入)
}
--Thread.sleep(3000); (ps:延迟3秒)
--equalsIgnoreCase 忽略大小写比较
--for循环里面的表达式1,通常是为循环变量赋初始值,可省略。例如:i = 0 或cnt = 20 或 count = 1;
表达式2 一般放入循环条件,是否继续执行循环,可省略。例如: i < 10 或cnt == 20 或 count >= 5;
表达式3,更新循环变量的值,可省略。例如:i++ 或cnt +=2 或 count-- ;
分号,用来分隔三个表达式,不可省略! 如果 for( ; ; )是死循环。
-- 在for循环里面,所创建的循环变量或者是其他变量只能在这个循环里面用。
-- {
在for循环当中,如果在里面自定义了一个变量,那么这个变量就不可以在for循环之外的结构体
当中打印,只可以在for循环结构之中打印;如果在循环结构体之外先定义了一个变量,那么充当for
条件即可在外面结构中进行打印。}
-- 1. 循环语句有三大类:while循环、do-while循环和for循环。
-- 2. 循环中包含重复执行的语句部分称为循环体。
-- 3. 无线循环指的是循环语句被无限执行。
-- 4. for循环一般用在循环体执行次数固定的情况。
-- 5. for循环控制由三部分组成。第一部分是初始操作,通常用于初始化控制变量。第二部分是循环继续条件,
决定是否执行循环体。第三部分是每次迭代后执行的操作,经常用于调整控制变量。通常,在控制结构中初始化
和修改循环体控制变量。
-- 6. 在循环中可以使用break和continue两个关键字。
-- 7. 关键字break立即终止包含break的最内层循环。
-- long strattime = System.currentTimeMillis(); (1970-1-1到当前时间的所有毫秒数。是变化的。)
-- 求运行程序的时间分别建立两个不同的变量,通过获取当前时间的毫秒数进行相减就可以了
-- break是跳出循环的意思,经常和if语句结合使用。
-- while(true) 和 for( ;;) —— 无限循环
-- 变量输入三次错误代码:
package libinglin_frist1; 变量输入三次错误代码

import java.util.Scanner;

public class 玩家贡献值
{

public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
double gongxianzhi = 0,sum = 0,sum1 = 0,sum2 = 0;
int a = 0,b=1;
String x = null; //声明chioce变量,为了询问用户是否继续输入做判断条件。
while (a==0) //当a=0时执行while语句
{
System.out.println("请输入玩家的个人贡献值: ");
gongxianzhi = input.nextDouble();
sum += gongxianzhi; //计算每次用户输入的贡献值的总数
if(gongxianzhi<0) { //当负数时开始判断
sum -= gongxianzhi; //负数时将上面的sum的值减去最后一次的贡献值输入,为了避免sum值不准确的情况
while (gongxianzhi<0&& b!=0)
{
System.out.println("个人贡献值不能为零!");
System.out.println("请输入玩家的个人贡献值: ");
gongxianzhi = input.nextDouble();
a++; //统计连续错误输入的次数
if(a==2&&gongxianzhi<0) { //判断是否连续错误输入三次
System.out.println("连续三次输入错误!");
System.exit(0);
}
if(gongxianzhi>0) {
sum2 = gongxianzhi; //将用户更改后的正确的值用变量储存起来
b=0; //当用户输入正确的贡献值时,停止循环
}
}
}
sum1 = sum+sum2; //将正确值相加
System.out.println("是否继续?: ");
x= input.next();
if("y".equals(x))
a = 0; //如果用户错误输入后a的值会发生变化,当用户确认继续输入后应将a值重新赋值以便继续循环
else
a = 3;
}
System.out.println("玩家的个人总贡献值为: "+ sum1);
}
}
-- 循环中的循环类似于外面的循环在循环里面的循环 类似:
public class breakTest {
public static void main(String[] args) {
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
System.out.println("i="+i+"j="+j);
if(j==3){
break;
}
}
}
}
}
(psas: i=0j=0
i=0j=1
i=0j=2
i=0j=3
i=1j=0
i=1j=1
i=1j=2
i=1j=3
i=2j=0
i=2j=1
i=2j=2
i=2j=3
i=3j=0
i=3j=1
i=3j=2
i=3j=3
i=4j=0
i=4j=1
i=4j=2
i=4j=3)
-- final 为了定义一个变量变成常量,不可修改。
-- continue (跳过本次循环,继续下次循环)
-- 在continue中,遇到for循环会先跳出这次循环然后更新循环变量再判断条件。
-- break和continue的区别:
1. break可用于switch结构和循环结构中
2. continue只能用于循环结构中
-- continue和break的作用(循环结构中):
1. break语句终止某个循环,程序跳转到循环块外的下一条语句。
2. continue跳出本次循环,进入下一次循环。
-- 三种循环结构的用途:
1. 在循环次数确定的情况下,通常选用for循环。
2. 在循环次数不确定的情况时,通常选用while和do-while循环。
-- 行和列的问题使用双循环,其中:外层循环控制行数,内层循环控制列数。
-- {
                         *
                        * *
                      *     *
                    *        *
                      *    *
                        * *
                         *
package libinglin_frist1;

public class 双循环
{
public static void main(String[] args)
{
for (int i = 0; i < 4; i++)
{
for (int j = 0; j <= 2-i; j++)
{
System.out.print(" ");
}
for (int j = 0; j <= 2*i; j++)
{
if(j==0 || j== 2 *i)
System.out.print("*");
else
System.out.print(" ");
}

System.out.println();
}
for (int i = 0; i < 3; i++)
{
for (int j = 0; j <= i; j++)
{
System.out.print(" ");
}
for (int j = 0; j <= 4-2*i; j++)
{
if (j==0 || j== 4-2*i)
{
System.out.print("*");
}
else
System.out.print(" ");
}
System.out.println();
}
}
}
}
-- {
          A
       BBB
    CCCCC
  DDDDDDD
    EEEEE
      FFF
        G
package libinglin_frist1;

public class 双循环
{
public static void main(String[] args)
{
char ch = ‘A‘;
//行、列的情况下采用双循环
for (int i = 0; i < 4; i++)
{
for(int j = 0;j <= 2-i;j++) {
System.out.print(" ");
}
for(int j = 0;j <= 2*i;j++) {
System.out.print(ch);
}
System.out.println();
ch ++;
}
for (int i = 0; i < 3; i++)
{
for(int j = 0;j <= i;j++) {
System.out.print(" ");
}
for(int j = 0;j <= 4-2*i;j++) {
System.out.print(ch);
}
System.out.println();
ch++;
}
}
}

}
-- {
    *
   ***
  *****
 *******
  *****
   ***
    *
package libinglin_frist1;

public class 双循环
{
public static void main(String[] args)
{

//行、列的情况下采用双循环
for (int i = 0; i < 4; i++)
{
for(int j = 0;j <= 2-i;j++) {
System.out.print(" ");
}
for(int j = 0;j <= 2*i;j++) {
System.out.print("*");
}
System.out.println();
}
for (int i = 0; i < 3; i++)
{
for(int j = 0;j <= i;j++) {
System.out.print(" ");
}
for(int j = 0;j <= 4-2*i;j++) {
System.out.print("*");
}
System.out.println();
}
}
}
}
--

Java笔记

原文:https://www.cnblogs.com/libinglin/p/9335956.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!