`
songxiangchao
  • 浏览: 25055 次
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
原文链接:http://www.ruanyifeng.com/blog/2009/08/twos_complement.html 问一个基本的问题。 负数在计算机中如何表示? 举例来说,+8在计算机中表示为二进制的1000,那么-8怎么表示呢? 很容易想到,可以将一个二进制位(bit)专门规定为符号位,它等于0时就表示正数,等于1时就表示负数。比如,在8位机中,规定每个字节的最高位为符号位。那么,+8就是00001000,而-8则是10001000。 但是,随便找一本《计算机原理》,都会告诉你,实际上,计算机内部采用2的补码(Two's Complement)表示负数。 什么是2的补码? 它是 ...

Java数字金字塔

    博客分类:
  • Java
用java实现如下: 1 121 12321 1234321 123454321 12345654321 1234567654321 123456787654321 12345678987654321 方法一:private static void pyramid(int line) { for(int i=1; i<=line; i++) { for(int j=1; j<=line-i; j++) { System.out.print(" "); ...
StringBuffer s = null; System.out.println(s.append("")); 会报运行时空指针异常。 记录一下,提醒自己这样的菜鸟:StringBuffer s = new StringBuffer();这行代码是生成了一个StringBuffer的引用s,指向一个内容为空的StringBuffer, StringBuffer s = null;这行则是生成了一个StringBuffer的引用s,内容为null,亦即未指向任何对象,此时调用append("")自然会报空指针异常了。StringBuffer s = ...
01、"^d+$"  //非负整数(正整数 + 0) 02、"^[0-9]*[1-9][0-9]*$"  //正整数 03、"^((-d+)|(0+))$"  //非正整数(负整数 + 0) 04、"^-[0-9]*[1-9][0-9]*$"  //负整数 05、"^-?d+$"    //整数 06、"^d+(.d+)?$"  //非负浮点数(正浮点数 + 0) 07、"^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]* ...
public class ContinuousSum { public static void main(String[] args) { int result = 15; for(int begin=1; begin<=result/2; begin++) { for(int end=begin+1; end<=result/2+1; end++) { int sum = 0; for(int k=begin; k<=end; k++) { sum += k; } if(sum == result) ...
import java.util.*; public class FindOdd { public static void main(String[] args) { int [] arr = {1, 4, 7, 3, 1, 3, 7, 4, 6, 9, 6}; Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for(int i=0; i<arr.length; i++) { if(map.containsKey(arr[i])) { map.re ...
public class CountWords { public static void main(String[] args) { BufferedReader br = null; try { br = new BufferedReader(new FileReader("english.txt")); } catch (FileNotFoundException e) { e.printStackTrace(); } StringBuffer sb = new StringBuffer(); String li ...
public class StringTest { public static void main(String[] args) { String str = new String("abc"); //语句(1) String str1 = "abc";//语句(2) String str2 = new String("abc");//语句(3) System.out.printl ...
class Parent{ int x=10; public Parent(){ add(2); } void add(int y){ x+=y; } } class Child extends Parent{ int x=9; void add(int y){ ...
1 如何将字串 String 转换成整数 int?  A. 有两个方法: 1). int i = Integer.parseInt([String]);      或       i = Integer.parseInt([String],[int radix]); 2). int i = Integer.valueOf(my_str).intValue(); 注: 字串转成 Double, Float, Long 的方法大同小异.  2 如何将整数 int 转换成字串 String ?  A. 有三种方法: 1.) String s = String. ...

死锁相关

1 死锁的基本概念 1.1  死锁 指多个进程在运行过程中因争夺资源而造成的一种僵局(deadly-Embrace),若无外力作用,这些进程都将无法向前推进。 1.2 产生死锁的原因 原因两点如下: 1. 竞争资源。 2. 进程间推进顺序非法。 其 ...
一  自增与自减运算符遵循以下规律: 1. 可以用于整数类型byte、short、int、long,浮点类型float、double,以及字符串类型char。 2. 在Java5.0及以上版本中,它们可以用于基本类型对应的包装器类Byte、Short、Integer、Long、Float、Double、Character。 3. 它们的运算结果的类型与被运算的变量的类型相同。 二  按位运算符能操作整型值,包括byte、short、int、long,但是不能操作浮点型值(即float和double),它还可以操作字符型(char)值。按位运算符不能够操作对象,但是在Java5.0及以上版本中 ...
//转换成字符数组逆序输出 public static void stringReverse(String s) { char[] charArr = s.toCharArray(); String resultStr = ""; for(int i=s.length()-1; i>=0; i--) { resultStr += charArr[i]; } System.out.println(resultStr); } //转换成字符数组从两头开始交换 public static void string ...
父类--静态变量 父类--静态初始化块 子类--静态变量 子类--静态初始化块 父类--变量 父类--初始化块 父类--构造器 子类--变量 子类--初始化块 子类--构造器 其中,静态变量和静态初始化块、变量和初始化块之间顺序,取决于他们在类中出现的先后顺序。
一   final     final可以用来修饰:       1. 变量                若修饰基本类型,则表示常量                若修饰引用类型,则表示此变量被赋予的引用是不可变的,但其指向的对象是可变的                若修饰方法的形参,则此形参在方法体内部不可以被赋值                还有一种更贴切的说法,若一个变量或方法参数被final修饰,就表示它只能被赋值一次,但是Java虚拟机为变量设定默认值不记做一次赋值。               被final修饰的变量必须被初始化,有以下几种方式:         ...
Global site tag (gtag.js) - Google Analytics