初识Java总结
接触Java有段时间了,但是奈何自己太笨,一直没什么进制,看视频做笔记大体了解了一下Java的概念,因为之前有些C的基础,所以写的思维方式也按照C的来~
(其实写博客是件很开心的事,有我写错或者瞎写的地方,欢迎大家来喷~)
1.Java的根基。
其实这个标题写的不是很理想,我本打算描绘一种很底层又很重要但是我写的很简单事情,额。。。。。。。就这样吧~~
1.开发
Java是1995年由Sun公司根据C语言的基础研制出来的编程语言,其特点是跨平台(稍后详谈),后在2009年Sun公司被甲骨文(Oracle)公司收购(看了下当时的新闻,个人觉得对于Java来说这也算的上最好的选择了)
2.版本
基础:Java SE
公司:Java EE
嵌入式:Java ME
3.核心
JVM(Java virtual Machine)虚拟机,刚刚提到的Java的跨平台的性,其本质就是Java可以在不同的虚拟机中运行,与计算机本身的平台无关。
JDK(Java Development Kit)Java的开发工具包,Java中集成了很多的"方法",使用“方法”可以简化代码量,“方法”有很多,所以被集成在一个个的“包”里,使用时候需要引入“包”
package com.company;
import java.util.Scanner;//这个就是引入的“包”
public class Main {
public static void main(String[] args){
}
}
JRE(Java runtime environment) Java运行时候的环境;
这里说一句,Java严格区分大小写!!!!!
4.配置环境变量
略,这个真的没啥说的啊。。。。。。
5.Java运行
用一段带来说明,这里面有可以使用Java像C一样做题的东西哦~~
import java.util.Scanner;//引入的包,在主方法外,这个包是为了进行数据输入引入的;
public class Main{//java的主方法,程序的入口,其中Main代表一个“类”
public static void main(String args[])//方法,这一块也叫“类体”
{ Scanner sc = new Scanner(System.in);//这是一个方法,用于与键盘交互(也就是输入数据),为了做题我就先写到了这里;
int n,i;
while(sc.hasNext())//这个可以理解为c中的while(scanf(...)),用于做题时候的多组数据输入,sc.hasNext()这个方法用于检测输入的数据是否有效,一直到文件的末尾;
n=sc.nextInt;//这个就相当于C中的scanf,sc.nextInt是"%d",sc.next是"%s"......更多详情请参看Java自带的API;
for(i=1;i<=n;i++)
{
if( i%3 != 0) System.out.println(i);
}
}
}
2.比较零碎的知识
看视频和书总结了一些东西,目前不知怎么分类,先将他们写下,日后分类;
1.Java的起名规范
所谓规范,就是不遵其也没事,但是最好遵循。
1.定义“包”名:多单词组成时候所有字母都小写:xxyyzz;
2.“类”、“接口”名:多单词组成时候所有字母首字母大写:XxxYyyZzz;
3.“变量”、“方法”名:多单词组成时候所有第一个单词首字母大写:Xxxyyyzzz;
4.常量名:所有字母都大写,多单词间用下划线分割:XXX_YYY_ZZZ;
5.!!!!!!!!important!!!!!!
起名字时候最好“见名知意”
2.赋值运算符
+=;-=;*=;/=,%=;
作用:
i+=2; == i=i+2;
其实这里划等号有些不妥,因为在同等类型下他们确实一样,但是前者写法比后者多了一个“精度控制”就是说,无论怎么就加都不会损失精度,可以说是无视数据类型的运算。
3.两数交换
交换m与n;
1.定义第三变量;k=m;m=n;n=k;缺点,浪费空间。
2.进行加减;m=m+n;n=m-n;m=m-n;缺点,会增加一丢丢的运算量。
3.位运算:m=m^n;n=m^n;m=m^n;最好!遵循规则a^b^a==b;其中^是Java中异或运算符。
4.运算符
1.比较运算符&&与&的区别:&&为非短路,先判断左侧,如果左侧为true则不判断右侧,&为短路,两侧都判断。与之类似的有||和|。
2.位移运算:<<左移,>>右移,>>>无符号右移,举例:y<<2==y*4(2的2次方);
3.类型转换:精度类型:byte<short<int<long<float<double;
低精度向高精度转,直接转(隐式类型):
int a=50; float c;c=a;
高精度向低精度转,强转(显式类型,可能会损失精度):
int a=(int)45.23;(括号里面是要转的类型);
4.取模%,取模运算符%的运算结果决定于被取模数:-13%4==-1;13%(-4)==1;
5.输出 println;这里说一下System.out.println(i);他是Java的输出语句,println()输出后会自动换行,去掉ln则不会。System.out.println(i);输出的是i代表的内容,System.out.println("i");则是输出"i"这个字母;
5.特殊的事情
float赋值时候需要在末尾加F,这个大小写无所谓;float a=456.75F;
long 赋值时候需要在末尾加l,这个大小写无所谓;long a=12345678910L;
6.方便的方式
foreach语句:
int arr[]={1,2,3,4,5};
for(int x,arr){
foreach语句,int x 引入的变量,arr指定要循环遍历的数组,最后将x输出;
System.out.println(x);
}
2020年1月29日晚初写;