Java学习-第一天

  今天开始学习Java,看的是[毕向东_Java基础视频教程].因为没有书,将笔记写写在博客上可以备忘和记录学习里程。同时希望通过写博客的形式可以让自己学习Java更有动力。

  01day

  1.Java跨平台性

  Java的跨平台性的主要原因是因为java虚拟机(JVM)的存在。

  2.JRE和JDK

  JRE是Java运行环境,全拼是(Java Runtime Environment),JRE包括Java虚拟机和运行Java程序所需要的核心库。想要运行一个java程序,在计算机上安装JRE就可以了。

  JDK是Java开发工具包,全拼是(Java Development Kit),JDK是提供给Java开发人员使用的。其中包括了开发Java程序的所用工具,还包括JRE。

  3.doc系统命令

  cd 进入路径 cd..返回上层目录 cd\ 返回盘符

  dir 列出当前目录 md 创建文件夹 kd 删除文件夹

  4.JDK环境变量配置

  JAVA_HOME C:\Java\jdk1.7.0_51

     CLASSPATH %JAVA_HOME%\jre\lib;

      path %JAVA_HOME%\bin;

  5.hello world  

class Demo

  {

     static void main(String [] args)

    {

      System.out.println("Hello World");

    }

  }

  在命令行中通过javac编译后,然后 java Demo.class 就可以在doc控制台上打印一个Hello Wrld 了。

  

  02day

  1.Java关键字

  Java关键字是被Java语言赋予特殊含义的单词。

  2.标识符

  标识符就是在程序中自定义的名称,这些名称由字母、数字和符号组成。标识符需要符合两个规则: 1.数字不可以在开头 2.不可以使用关键字

  在起名字时,为了提高代码的可阅读性,名字要尽量有意义。

  3.代码注释

  // 注释一行

  /*

注释多行

*/

  4.常量和变量

  常量就是不能改变的数值。在Java中常量包括整数常量、小数常量、布尔型常量、字符串常量、null常量。

  变量:就是将不确定的数据进行存储,也就是在内存中开辟一个空间存储数据。

  变量的定义:

  数据类型 变量名 = 初始化值;   eg. int i = 0;

  什么时候定义变量? 当数据不确定,需要对数据进行存储的时候就定义一个变量用来完成存储。

  在Java中数据类型包括:基本数据类型(byte、short、int、long、float、double、char、boolean)和引用数据类型(class、interface、[](数组))

   

    int x=4;

  byte b =2 //-128~127

  short s = 30000; //3W+

  long l = 4l;

  float f = 2.3f;

  double d = 24.46;

  char ch = ‘4‘;

  boolean bo = true;

  5.类型转换  

class  D2Byte
{
    public static void main(String[] args)
    {
        byte b = 4; 

        //b = b + 5;
        b += 5;

        System.out.println(b);

        //b= b + 5; 编译不通过,这里是先经行加法然后赋值,相加以后会默认转化为int型。赋值的时候int型不能给byte型赋值。
        //b += 5;   编译通过,这里+=运算符会默认进行强制转换。
    }
}        

  6.字符串拼接  

class StringDemo
  {
    public static void main(String[] args)
    {     

      string a = "LiMing";

        int b = 23;

      System.out.println("hello, "+a+" you age is"+b+".");
    }
  }

  字符串数据和任何数据使用+都是相连接,最终都会变成字符串。上面的程序运行后会打印出: hello, LiMing you age is 23.

  7.转义字符:(通过\ 来转变后面字符或者符号的含义)。

  \n :换行。

  \b : 退格。

  \r :按下回车键。

  \t : 制表符。

  8.赋值运算符

   +=   -=    *=    /=    %=

  9.逻辑运算符

  逻辑运算符用于连接Boolean类型的表达式

  & 与:&可以看成是数字0,在判断的时候只要出现0就是false

  |  或:|可以看成是数字1,在判断的时候只要出现1就是true

  ^ 异或:总结起来就是,同假异真。

! 非:非就是取反,取反表达式后假就是真,真就是假

&& 逻辑与:判定跟&差不多。区别就是 当使用&&的时候,左边出现false后立即得出判断结果, &&右边的表达式不会进行判断而使用  & 两边的表达式都参与运算。

  || 逻辑或:判定跟|差不多。 区别就是 当使用||的时候,左边出现true后立即得出判断结果, ||右边的表达式不会进行判断而使用  | 两边的表达式都参与运算。

  

  10.位运算符(位运算是直接对二进制数就行运算)

  <<:左移   eg. 3<<2 = 12 --> 3*2*2 =12 左移就是乘以2的移动位数次幂

3的二进制表现形式:0000-0000-0000-0011 -->左移2位补位后就是00-0000-0000-0011--> 0000-0000-0000-1100=12

 

  >>:右移  eg.  3>>1 =1 --> 3/2 = 1 右移就是除以2的移动位数次幂

  3的二进制表现形式:0000-0000-0000-0011 -->右移1位补位后就是00000-0000-0000-001--> 0000-0000-0000-0001=1

  >>>:无符号右移  eg. 3>>>1 = 1 --> 3/2 = 1

  >>:右移后,最高位补位由原来的数据的最高位而定。如果最高位位0,则右移后用0补位,如果最高位为1,则右移后用1补位

  >>>:无论最高位是什么,右移后用0补位

  &与运算   eg. 6 & 3 = 2

  0000-0000-0000-0110
 & 0000-0000-0000-0011
-----------------------
   0000-0000-0000-0010    = 2

      

  | 或运算  eg.  6 | 3 = 7

  0000-0000-0000-0110
 |  0000-0000-0000-0011
----------------------------
   0000-0000-0000-0111     = 7

  ^异或运算  eg. 6 ^ 3 = 5

  0000-0000-0000-0110
 ^ 0000-0000-0000-0011
----------------------------
   0000-0000-0000-0101   = 5

  ^异或的应用: 7^4^4=7 一个数异或同一个数两次还是那个数。

  应用1:用于加密

  

  应用2: 不借助第三方两个变量进行互

class D2nTom
{
    public static void main(String[] args)
    {
        /*
         不借助第三方两个变量进行互换
        */
        int a = 10 ,b =50;
        System.out.println("不借助第三方两个变量进行互换前: a= " +a +", b= "+b);
        //方法一

        a= a+b;
        b= a-b;
        a= a-b;

        System.out.println("不借助第三方两个变量进行互换后: a= " +a +", b= "+b);
        System.out.println("--------------------------------------------------");
        /*
            方法二
        */

        System.out.println("不借助第三方两个变量进行互换前: a= " +a +", b= "+b);

        a = a ^ b;
        b = a ^ b;
        a = a ^ b;

        System.out.println("不借助第三方两个变量进行互换后: a= " +a +", b= "+b);      

    }
}

  ~反码  eg. ~6 = -7

 ~  0000-0000-0000-0110---->所有位取反
-----------------------------
   1111-1111-1111-1001 ---> 先减一再取反的出整数
 -  0000-0000-0000-0001 --->减一 ----------------------------
    1111-1111-1111-1000 --->取反
 ----------------------------
   1000-0000-0000-0111      =-7

  10.条件运算符

  (条件表达式)? 表达式1:表达式2

  如果条件表达式的结果为true则执行表达式1的内容,如果条件表达式的结果为false则执行表达式2的内容。  

  int a=10,b;

  b=(a>8)? 100:200;
      /*三目运算符:
        好处:可以简化 if else 代码
        弊端: 因为是运算时,所以运算完必须由一个结果。
      */    

  11.判断结构

//if语句:有三种形式
1.if(条件表达式)
{
        执行语句;
}

2.if(条件表达式)
{
        执行语句;
}
else
{
        执行语句;
}

3if(条件表达式)
{
        执行语句;
}
else if(条件表达式)
{
        执行语句;
}
...
...
...
else
{
        执行语句;
}

  12.选择结构-switch语句

switch(表达式)
{
    case 取值1:
    执行语句;
    break;

  case 取值2:
    执行语句;
    break;

  case 取值3:
    执行语句;
    break;
    ...
    ...
    ...

    case 取值n:
    执行语句;
    break;

    default:
    执行语句;
    break;
}
/*
switch的特点
1.switch语句选择的类型只有四种: byte,short,int,char.
2.case与default之间没有顺序。先执行第一个case,直到没有匹配的case后执行default。
3.结束switch语句的两种情况,遇到break或执行到switch语句结束。
4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行。运行可以执行的语句,直到遇到break或者说switch结尾后结束。

if和switch语句功能相似,具体情况怎么选择呢?如果判断的具体数值不多,而且符合 byte short int char 这四种类型。虽然两个语句都可以使用,建议使用switch语句,因为效果稍高。其他情况,对区间判断,结果为boolean类型判断,则使用if,if的范围更广泛。*/

  

 

时间: 2024-08-04 13:46:47

Java学习-第一天的相关文章

201671010140. 2016-2017-2 《Java程序设计》java学习第一周

   java学习第一周        本周是新学期的开端,也是新的学习进程的开端,第一次接触java这门课程,首先书本的厚度就给我一种无形的压力,这注定了,这门课程不会是轻松的,同时一种全新的学习方式:反转课堂,全新的尝试,忐忑的同时,又对这段新的学习路途充满了期待.         第一章,其实就是对java这门课程学习的一个铺垫和前期热身,第二章则是帮助我们了解并试着运用有关工具及了解java开发环境,通过阅读书本,相关课件,相关工具使用文件,同时在上机操作的过程中逐渐吸收知识.     

Java 学习第一步-JDK安装和Java环境变量配置

Java学习第一步——JDK安装及Java环境变量配置 [原文] 2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋友也越来越多了,作为一门面向对象的编程语言,Java也有着安全.高效等诸多有点.从TIOBE(TIOBE排行榜是根据互联网上有经验的程序员.课程和第三方厂商的数量,并使用搜索引擎(如Google.Bing.Yahoo!.百度)以及Wikipedia.Amazon.YouTube统计出排名数据,只是反映

Java学习第一天

今天是Java学习的第一天,感触很多,由于没有编程基础,所以开始听得有点云里雾里的,但好在洛昊老师讲得很耐心仔细,慢慢的也明白老师讲的内容了.      今天主要学习了Java语言的基础格式和用法,学习了“类”,并使用了基础的public class来实现hello world 的显示.后面在老师的演示下学习了使用Java语言运行“加减乘除”的运算.下午学习使用scanner来运算变量.最后自己编写了“英寸”单位转换为“厘米”单位的代码.      总之今天的学习让我对Java产生了更多的兴趣.

java学习第一个小项目--商品系统

是 对于java学习的前期,大约学了三周左右,我们在老师的带领下写了这个商品系统,功能比较简单,运用的都是java学习前期比较基础的知识 这是我对这个系统的名字与包和class文件的命名. 主要创建的是商品和生产者之间,Commodity和producer. 创建商品的基本属性(成员变量),以及一个无参钩爪方法 重点是Producer类中的编写. 按照序列号对商品进行升序排序 按照商品保质期的长短对商品进行排序 下面是主程序里面,加入自己创建的商品数据,对商品系统进行测试,看是否有一些功能没有实

Java学习第一步——JDK安装及Java环境变量配置

Java作为当下很主流的编程语言,学习Java的朋友也越来越多了,作为一门面向对象的编程语言,Java也有着安全.高 效等诸多有点.从TIOBE(TIOBE排行榜是根据互联网上有经验的程序员.课程和第三方厂商的数量,并使用搜索引擎(如Google.Bing. Yahoo!.百度)以及Wikipedia.Amazon.YouTube统计出排名数据,只是反映某个编程语言的热门程度,并不能说明一门编程语言好 不好,或者一门语言所编写的代码数量多少.)排行榜来看,四月.五月的数据分析,Java语言仅次于

从.Net到Java学习第一篇

以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保,连我自己都有点惊讶,居然有这么多家公司了.对于java的梗,这是有历史缘由的,大二的时候同一大波人去蓝杰参加java培训,当时一个空心的菱形怎么也写不出来,我写来写去就是一个实心的砖头,结果培训老师实在看不下去了,就说:“唉!你不适合搞java”,我看了下一同前去的几个同学一下子就都写出来了,搞得

Java学习第一天:数据基础,打印质数的实现

第一天正式学习Java,写下这篇关于质数求解的文章,希望能更改进的更好. 首先说,以前在C上求解过质数的问题,当时没怎么在意.一直用的方法是从2开始递增到n-1,如果在这个过程中有一个数能被n整除,那么这个数就不是质数.这样做当然是没问题的最简单的一种方法. 之后看了一些文章的介绍,随着数学知识的增长,今天在学习Java语言上实现了这个想法,把这一过程记录如下: 先从最原始的递增法说起: 1.除了2之外,全部的质数是奇数,所以,循环数可以减少一般. 2.递增的界限不应是n-1,可以加以优化.对于

Java学习第一周

第一周学习了JDK的安装和环境的配置,初步了解了Java与C的不同之处,学习了Java的变量.基本数据类型.以及面向对象的基础.并且自行完成了一些简单Java程序的编写. (1)学习了为什么使用抽象类,使用抽象类是为了让程序员在继承时不会忘记复写, abstract class Printer { void open() { System.out.println("open "); } void close() { System.out.println("close"

JAVA学习第一周博客

20145333 <Java程序设计>第一周学习总结 教材学习内容总结 第一章 Java平台概论 Java三大平台:Java SE.Java EE与Java ME Java SE的四个组成部分:JVM.JRE.JDK与Java语言 JRE包括Java SE API和JVM,JDK包括Java程序设计语言.JRE和开发工具. 如果要运行Java程序,必须安装JRE:如果要开发Java程序,必须要取得JDK. 第二章 从JDK到IDE JVM是Java程序唯一识别的操作系统,对JVM来说,可执行文

Java学习第一篇---Java入门准备

这是我的第一篇博客,以后也会写自己学习Java的过程.一些知识点.心得体会等,以此鼓励自己坚持学习! 现在开始了我学习Java的生涯:[个人下载的Jdk版本是jdk-8u5-windows-x64] 1.安装之后的目录: ->Source Code: 安装这个选项将会安装Java所有核心类库的源代码 ->bin: 该路径下存放了JDK的各种工具命令,常用的Javac.java等命令. ->db: 该路径是安装Java DB的路径[DB(data base,数据库)是依照某种数据模型组织起