第二卷

1.每个JAVA程序必须有一个main函数,但并非是每个类都有,main函数必须声明为static函数。

2.println与print之间的区别是换行与不换行。

3.在JAVA中,不想C/C++分变量的声明和定义,常量的定义关键字是final。(有中文提示错误,真好。)

4.在JAVA中,用strictfp标记的方法必须使用严格的浮点计算方法。   例如 public static strictfp void main(String[] avgs);

5.Math类的有些函数并不是通过对象来调用方法,而是通过静态调用。这种方法称为静态调用。   引入数学包import static java.lang.Math.*;

6.数据类型非强制转换的时候,有些类型之间的转换会有精度丢失,例如int->float,long->float,long->double。

7.进行二元计算的时候,如果有一个类型是double类型,那么另一个数会先转化为double类型,然后在进行计算。而float,long也是如此。

8.关于强制转换类型的话,这个和C/C++差不多,可以和Math类的静态方法来做相应的计算。

9.枚举类型,字符串类型都和C/C++差不多,都有相应的方法来操作,例如截取子串,拼接字符串。

10.这个很有意思,JAVA中的String相比C语言的字符数组,更像C语言的字符指针,它在重新赋值的时候,会自动的回收多余的内存,原始字符放在堆中, 如果内存未被使用,那么系统将会自动回收这块内存,并不会造成内存泄露。

11.一定不能使用"=="来比较两个字符串是否相等(C/C++经常这么干),在JAVA中应该使用equals方法来比较,当然方法的左边可以是常量,例如  string str="Hello";  "Hello".equals(srt);//It's true。  当然,如果想忽略大小写,可以使用方法equalIgnoreCase。  切记不可以使用“==”,因为这个判断方法只是判断这两个字符是否放在同一个内存位置中。

12.相关一些String 类的方法 package welcomejava;

public class Contans {

public static void main(String[] args)

{   // TODO Auto-generated method stub   /*final int icon=20;   double dHeigh=40;   double dWidth=50;   System.out.println("The Size is:"+dHeigh+"*"+dWidth+"="+dHeigh*dWidth);   System.out.println(icon);*/   String str="Hello";   int length=str.length();//获得字符代码单元   System.out.println("the length is:"+length);   int iCount=str.codePointCount(0, str.length());//实际字符代码单元   System.out.println("the point length is:"+iCount);     } }

13.字符串构造器StringBuilder Builder=new StringBuilder();//创建一个新的字符串对象;     Builder.append(Signlechar);     Builder.append(Str);     String str=Builder.toString();//获取由builder创建的字符串对象。

14.有System.out就有相对应的System.in,不过System.in的使用相对麻烦一点。  首先应该先构造一个扫描器来扫描输入   Scanner in =new Scanner(System.in);//构建Scanner   System.out.println("what is your name?");   String name=in.nextLine();//不忽略空格号   System.out.println(name);   String name1=in.next();//以空格号为分隔符。主意区别   System.out.println(name1);   //在最开始的地方要先引入包:import java.util.*;

15.另外,Scanner不适合保护密码,因为是明文输入,所以如果想保护密码的话,应该使用Console类。  效果是密文。  Console con=System.console();  String name =con.readLine("User name:");  char[] pswd=con.Password("Passwod:");

16.关于格式化输出,JAVA5.0沿用了C语言的printf格式化输出(- -貌似很强大的样子)。

17.想要对文件进行读取,就要用一个File对象来创建一个Scanner对象  Scanner in =new Scanner(new File(Mytext.txt));  //注意路径问题,如果路径是在其他目录下,必须用两个反斜杠号来表示路径。例如  //C:\\MydiretoryFile\\Mytext.txt  想要写入文件,那么就要创建一个PrintWrite对象,创建这个对象只需要提供文件名。  PrintWrite out =new PrintWrite(Mytext.txt);  如果此文件不存在,则可以像System.out那样使用printf,print,println方法。

18.JAVA不能像C++那样在外层作用域中定义名字相同的变量,因为这样可能导致程序设计错误。

未完待续的JAVA基础知识的更多相关文章

  1. 未完待续【java】JavaEE学习路线总览

    这个博客会详细介绍各种技术的知识点,从零基础到入门,充当引路的作用. 同时也会发布一些Swift语言.c#语言.Xcode开发的学习笔记.一些阅读的笔记(部分读书笔记无法发布). 目前1-43的Jav ...

  2. java泛型基础、子类泛型不能转换成父类泛型--未完待续

    参考http://how2j.cn/k/generic/generic-generic/373.html 1.使用泛型的好处:泛型的用法是在容器后面添加<Type>Type可以是类,抽象类 ...

  3. ASP.NET Core 2.2 基础知识(八) 主机 (未完待续)

    主机负责应用程序启动和生存期管理.共有两个主机 API : 1.Web 主机 : 适用于托管 Web 应用,基于 IWebHostBuilder ; 2.通用主机 : 适用于托管非 Web 应用. 基 ...

  4. 2017-2-17,c#基础,输入输出,定义变量,变量赋值,int.Parse的基础理解,在本的初学者也能看懂(未完待续)

    计算机是死板的固定的,人是活跃的开放的,初学c#第一天给我的感觉就是:用人活跃开放式的思维去与呆萌的计算机沟通,摸清脾气,有利于双方深入合作,这也是今晚的教训,细心,仔细,大胆 c#基础 1.Hell ...

  5. Java开发中的23+2种设计模式学习个人笔记(未完待续)

    注:个人笔记 一.设计模式分三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模 ...

  6. CC2530学习路线-基础实验-串口通讯发送字符串(4 未完待续)

    目录 1. 前期预备知识 1.1 串口通讯电路图 1.2 实验相关寄存器 1.2 常用波特率设置 本章未完待续..... 原来写的文章已经丢失了,只能找到这一小部分,看什么时候有时间再补上. 1. 前 ...

  7. odoo11 model+Recordset 基础未完待续

    Model 一个模型代表了一个业务对象 本质上是一个类,包含了同django flask一样的数据字段 所有定义在模型中的方法都可以被模型本身的直接调用 现在编程范式有所改变,不应该直接访问模型,而是 ...

  8. 【干货】用大白话聊聊JavaSE — ArrayList 深入剖析和Java基础知识详解(二)

    在上一节中,我们简单阐述了Java的一些基础知识,比如多态,接口的实现等. 然后,演示了ArrayList的几个基本方法. ArrayList是一个集合框架,它的底层其实就是一个数组,这一点,官方文档 ...

  9. JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)

    本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...

随机推荐

  1. Kooboo中如何切换数据库(注意:如果切换数据库,需要Kooboo中没有一个website 否则会报错数据库中没有表之类的)

    Setup database provider 来自Kooboo document   Kooboo CMS can almost support all the types of database, ...

  2. Ubuntu 固态硬盘 4K对齐及启用 Trim,及其验证方法

    因为之前一个移动硬盘因为坏道蔓延导致没办法继续使用,我略冲动地跑去买了一块 120GB 的三星840 固态硬盘回来.为了使用起来更方便,还去弄了个光驱位硬盘托架,把固态硬盘接在了光驱位与原本的笔记本硬 ...

  3. phonegap Overview

    PhoneGap 和 Cordova的关系阐述 是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎.你可以把他想象成类似于Webk ...

  4. 【每天一个Linux命令】10. 用户账号的新建/修改/删除以及密码修改 useradd/usemod/userdel/passwd

    在 Linux 系统中,与用户管理有关的文件主要有如下几个:分别是/etc/passwd,/etc/shadow,/etc/gfoup,/etc/gshadow .它们分别与用户的账号,密码,用户组及 ...

  5. 关于七牛云存储,HTTPS资源上传不成功问题

    关于七牛云存储,HTTPS资源上传不成功问题 官方给出了一个解决方案,亲测可用.特此记录一下. 找到QNConfiguration.m文件.然后重写两个方法,直接上代码. + (instancetyp ...

  6. HDU 3635 并查集+路径压缩+记录每个点移动次数

    题意: 给定n个点 oper个操作 每个点有1个龙珠 下面2种操作: T u v 把u点所有龙珠搬到v Q u  问u点当前所在城市 u点所在城市有几个龙珠 u点被移动几次 思路: 并查集可以求出 u ...

  7. Castle IOC FOR MVC 使用方法

    Castle Web.API 使用方法 一.创建 WindsorActivator 继承 IHttpControllerActivator public class WindsorActivator ...

  8. 如何调试libc++abi.dylib handler threw exception错误

    From:http://blog.csdn.net/naruto_ku/article/details/8779203 在进行iOS开发时,偶尔会碰到libc++abi.dylib handler t ...

  9. Android在线更新 远程安装程序

    原文:http://blog.csdn.net/jasper_success/article/details/7984065 第一步:使用java.net的URLConnection对象来创建连接 第 ...

  10. php中用户自定义排序

    php中数组用户自定义排序函数有usort和uasort,前者键值重新排列,后者保持原数组的键值. 举例usrot: usort($filterArr, 'sortArr'); function so ...