10_9 java笔记

java中所有的关键字都是小写的
注意main虽然被编译器识别,但是它并不是关键字
包:(名字小写)
单级包:liyi
多级包:cn.itcast

path 和classpath的区别:
path环境变量里面记录的是可执行性文件,如.exe文件,对于可执行文件现在当

前路径下去找,如果没找到就去path环境变量中配置的路径去找

classpath环境变量里记录的是java类的运行文件所在的目录。对于class文件,

先在classpath下找路径,然后再找当前路径

一定要养成先写注释后写代码的习惯。

将思想通过注释先整理出来,再用代码去实现因为代码仅仅是思想的一种体现形式而已!!!

注释除了解释说明程序之外,还能帮助我们调试程序,一点一点调试
下面是不同类型的数据的输出,包括几种进制数的输出

public class Demo {
    public static void main(String[] args){
        //字符串常量的输出
        System.out.println("hello");
        //整数常量的输出(十进制)
        System.out.println(100); //输出100
        //整数常量的输出(二进制)
        System.out.println(0b100);//输出4
        //整数常量的输出(八进制)
        System.out.println(0100);//输出64
        //整数常量的输出(十六进制)
        System.out.println(0x100);//输出256
        //小数常量的输出
        System.out.println(10.123);
        //字符常量的输出
        System.out.println(‘0‘);
        //布尔常量的输出
        System.out.println(true);
    }
}

java.lang.Math中的random方法会返回一个0-1.0之间的doble型的随机数(不包括1.0); 
使用方法举例:
int magic = (int)(Math.random()*101)+100;
这句话该方法*101得到1——100之间的随机数,再加100得到100——200之间的随机数

package demo;
import java.util.Scanner;
public class Demo{
    public static void main(String[] args){
        int magic = (int)(Math.random()*101)+100;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你猜的数");
        int guess = sc.nextInt();
        while(guess != magic){
            if(guess > magic){
                System.out.println("错误,该数太大,请重猜");
            }else{
                System.out.println("错误,该数太小,请重猜");
            }
            guess = sc.nextInt();
        }
        System.out.println("恭喜你,答对了,该数是"+magic);
    }
}

字符串转化为小写

package demo;
import java.util.Scanner;
/*字符串转化为小写*/
/*其中toLowerCase的作用是将字符串转化为小写字符串*/
public class Demo {
    public static void main(String[] args){
        String month = "";
        int monthNumber = 0;
        Scanner input = new Scanner(System.in);
        System.out.print("请输入月份:");
        month = input.next();
        switch(month.toLowerCase()){
        case "january":monthNumber = 1; break;
        case "february":monthNumber = 2;break;
        case "march" : monthNumber = 3; break;
        case "april" : monthNumber = 4; break;
        case "may" : monthNumber = 5; break;
        case "june" : monthNumber = 6; break;
        case "july" : monthNumber = 7; break;
        case "August" : monthNumber = 8; break;
        case "september" : monthNumber = 9; break;
        case "october" : monthNumber = 10; break;
        case "november" : monthNumber = 11; break;
        case "december" : monthNumber = 12; break;
        default : monthNumber = 0; break;
        }
        if(monthNumber == 0){
            System.out.println("输入的月份非法!");
        }else{
            System.out.println(month+"是"+monthNumber+"月份");
        }
    }
}

带标签的break的使用
这里,标签start用来标识外层的for循环,因此,这里的break start跳出了外层循环

package demo;

public class Demo {
    public static void main(String[] args){
        start:
            for(int i = 0; i < 3; i++){
                for(int j = 0; j < 4; j++){
                    if(j == 2){
                        break start;
                    }
                    System.out.println(i+":"+j);
                }
            }
    }
}

同理,带标签的continue;

public class Demo {
    public static void main(String[] args){
        start:
            for(int i = 0; i < 3; i++){
                for(int j = 0; j < 4; j++){
                    if(j == 2)
                        continue start;
                    System.out.println(i+":"+j);
                }
            }
    }
}

这句话现在还不太懂:
  带标签的break可用于循环结构和带标签的语句块,而带标签的continue只能用于循环结构。

综合使用带标签的continue和break;

package demo;
public class Demo {
    public static void main(String[] args){
        outer:
            for(int i = 0; i < 3; i++){
                System.out.println("i = "+i);
                inner:
                    for(int j = 0; j < 100; j++){
                        if(j == 20)
                            break outer;
                        if(j % 3 == 0)
                            continue inner;
                        System.out.println("j = "+j);
                    }
                System.out.println("This will not be print.");
            }

        System.out.println();
        System.out.println(1);
    }
}

在C/C++语言中可以使用goto语句从内层循环跳到外层循环,但是在Java语言尽管将goto作为关键字,但不能使用,也没有意义。

时间: 2024-11-10 14:58:10

10_9 java笔记的相关文章

15.1-全栈Java笔记:Java事件模型是什么?事件控制的过程有哪几步??

应用前边两节上一章节的内容,大家可以完成一个简单的界面,但是没有任何的功能,界面完全是静态的,如果要实现具体功能的话,必须要学习事件模型. 事件模型简介及常见事件模型 对于采用了图形用户界面的程序来说,事件控制是非常重要的. 一个源(事件源)产生一个事件并把它(事件对象)送到一个或多个监听器那里,监听器只是简单地等待,直到它收到一个事件,一旦事件被接收,监听器将处理这些事件. 一个事件源必须注册监听器以便监听器可以接收关于一个特定事件的通知. 每种类型的事件都有其自己的注册方法,一般形式为: v

13.1-全栈Java笔记:打飞机游戏实战项目|AWT技术|MyGameFrame

简介和项目目标 通过游戏项目学习整个Java基础知识体系,我们做了精心的设计,让每一章知识都能获得应用. 比如:多线程用来实现动画效果.容器实现对于多发炮弹的存取和处理.常用类等等的应用. 寓教于乐,让大家迅速入门,更希望通过喜闻乐见的小游戏,让大家爱上编程,爱上"程序员". 老鸟建议 很多朋友会疑惑:"游戏项目,又不能拿到企业面试中,为什么要讲?" 这是一种太过于功利的想法.就像,我们说:"今天吃个馒头,又不是长高,为什么要吃呢?" 游戏项目的

Java笔记---部署 JavaWeb 项目到云服务器

一.前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在主菜就要上场了,那就是将我们的 JavaWeb 项目部署到云服务器上.兴奋吧?淡定淡定~ 二.项目部署 我们对于 Java Web 项目在本地机器(无论是 Windows 还是 Linux)上的部署已经了然于心了,那么对于在云服务器上部署 Java Web 项目又是如何操作的呢? 其实很简单,还是离不开 Web 项目部署的那三点: ① 基础的 JDK 环境 ② 一个 Web 服务器.如 Tomcat.JBoss ③ 一款数据库.如:m

JAVA 笔记 七

JAVA笔记七 this:就代表本类的对象,this代表它所在函数所属对象的引用简单说:那个对象在调用this所在的函数,this就代表那个对象静态:static 用法:是一个修饰符,用于修饰成员(成员变量,成员函数)当成员被静态修饰后,就多了一个调用方式,除了可以被对象调用外,还可以直接被类名调用.类名.静态成员static特点1.随着类的加载而加载2.优先于的对象存在3.被所有对象所共享4.可以直接被类名所调用实例变量和类变量的区别:1.存放位置. 类变量随着类的加载而存在与方法区中. 实例

JAVA笔记六

JAVA笔记总结六 把大象放入冰箱的几步: 面向对象的三个特征:封装,继承,多态 JAVA开发实际上就是找对象使用,没有对象就创建一个对象 找对象,建立对象,维护对象的关系 类和对象的关系:类是对现实生活中实物的描述: 对象就是这类事物,实实在在存在的个体 匿名对象:匿名对象可以作为参数进行传递也可以作为对象方法进行一次调用

java 笔记 String 和Stringbuffer

String 是一个类,而不是java中的基本数据类型. String s = "abc";  "abc"是一个对象,存放在常量池中.一旦被初始化就不能被更改了. s = "cde";  这里并没有改变字符串,而是使对象引用指向字符串cde: String s1 = new String("abc"); String s2 = "abc"; 这两者有什么不同,第一个有两个对象,一个是"abc&qu

14.5-全栈Java笔记:java.awt这些布局怎么写?|流式|边界|网格

布局管理器 读者会发现,如果使用坐标定位法(空布局),在一个比较复杂的界面上定位每个控件的坐标是一个非常麻烦的工作,而且在界面大小发生改变时,控件的绝对位置也不会随之发生改变.那么如果我们想让用户界面上的组件可以按照不同的方式进行排列怎么办?例如:可以依序水平排列,或者按网格方式进行排列等,其实每种排列方案都是指组件的一种"布局",要管理这些布局,就需要本节学习的布局管理器. 管理布局的类由java.awt包来提供,布局管理器是一组实现java.awt.LayoutManager接口的

14.4-全栈Java笔记: javax.swing常用控件有哪些?怎么用?

常用基本控件 javax.swing.JButton 在图形界面程序中,按钮可能是使用量最大的控件之一,javax.swing包中JButton类就是用来创建按钮的.如表1所示,为JButton常用的构造方法.  javax.swing.JLabel JLabel控件是最简单的Swing组件之一,用于在窗体上显示标签, JLabel既可以显示文本,也可以显示图像.如表3所示,为JLabel常用的构造方法. 注意: JLabel只能用于显示文本和图标信息,用户不能对其进行修改. javax.swi

13.3-全栈Java笔记:打飞机游戏实战项目|PaintThread|launchFrame

多线程和内部类实现动画效果 1)增加绘制窗口的线程类 前三个版本,我们步步为营,每个小版本都有功能的突破.但是,目前为止我们的窗口仍然是静态的,并没有像真正的游戏窗口那样"各种动.各种炫".本节我们结合多线程实现动画效果. 我们在MyGameFrame类中定义"重画窗口线程PaintThread类",为了方便使用MyGameFrame类的属性和方法,我们将PaintThread定义成内部类. [示例1]MyGameFrame类:增加PaintThread内部类 pu