- 浏览: 318934 次
- 性别:
- 来自: 西安
最新评论
-
yjq8116:
getString 这个方法你有没有试过,是错误的。这段代码被 ...
ByteBuffer和String的互相转换 -
OnlyForJava:
博主,友情的提醒下,你的Ubuntu写错了
Ubutun上配置hadoop,hbase,zookeeper环境并安装
文章列表
最近准备找工作了,看了个上机题,随便写出来看看:
int main()
{
char *str=(char *)malloc(100);
scanf("%s",str);
char *tail,*head;
head=str;
tail=str;
while(*tail!='\0')
{
tail++;
}
tail--;
while((tail-head)>0)
{
*head=*head^*tail;
*tail=*head^*tail;
*head=*head^*tai ...
看一下typedef和#define的一个区别
- 博客分类:
- C语言
首先看一下下面的两种定义,想想会有什么不同:
第一种定义:宏定义,以FU表示int*(在编译时就替换了)
#define FU int*
第二种定义:
typedef int* FU;
好了,应用以上的FU分别定义变量有什么区别呢?
FU i,j;
如果使用第一种定义,则 i 是一个int型指针。 j 仅仅是一个int型变量。
如果使用第二种定义,则 i 和 j都是一个int型指针。
比如如下代码:
t ...
浅谈Date和Calendar类
- 博客分类:
- Java解惑
在Java平台首次发布时,唯一支持日历计算类的就是Date类;在Java1.1版中,Calendar类被添加到Java平台中,以矫正Date的缺点,由此大部分的Date方法就被弃用了。可惜的是,这样做很糟糕。
比如:
1:Date将一月份表示为0,而Calendar延续了这个错误。因此下面的代码会输出2000:
Calendar calendar=Calendar.getInstance();
calendar.set(1999,12,31);
System.out.println(c ...
Java代码
public static void sort(long[] a) 这个方法会将一个long类型数组进行排序,java原码中有说明,这个排序是用快速排序算法实现的。
示例代码
Java代码
Arrays.deepToString的使用
- 博客分类:
- Java解惑
上代码先:
String array[][]={{"hello","haha"},{"nishi","nihao"},{"woshi","wohao"}};
System.out.println(Arrays.toString(array));
System.out.println(Arrays.deepToString(array));
看看结果:
[[Ljava.lang.String;@153f67e, [Ljava.lang.St ...
Java的BigDecimal
- 博客分类:
- Java解惑
BigDecimal类
双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。表5.7中列出了BigDecimal类的主要构造器和方法。
BigDecimal类的主要构造器和方法
Java中的BigInteger
- 博客分类:
- Java解惑
首先从终端读入时可以读入BigInteger如:
读入: Scanner cin = new Scanner (System.in);
while(cin.hasNext())//等价于!=EOF
n=cin.nextInt();//读入一个int型的数
n=cin.nextBigInteger();//读入一个大整数
再复习一下数据类型:
数据类型 类型名 位长 取值范围 默认值
布尔型 boolean 1 true,false false
字节型 by ...
Java的一条语言规范
- 博客分类:
- Java解惑
JLS14.4:不允许一个本地变量声明语句做为一条语句在for,while,或do循环中重复执行。
像下面的是不合法的:
for(int i=0;i<10;i++)
int j=i;
除非加上大括号,才会变合法:
for(int i=0;i<10;i++)
{
int j=i;
}
不要在构造器中调用可覆写的方法
- 博客分类:
- Java解惑
首先看一下下面的程序,猜猜会输出什么:
class Point{
Point(){
show();
}
void show(){
System.out.println("Father.");
}
}
class ColorPoint extends Point{
void show(){
System.out.println("Son.");
}
public static void main(String args[]){
...
静态变量的初始化顺序与问题
- 博客分类:
- Java解惑
先看一个代码,猜猜看会输出什么:
public class Elvis{
public static final Elvis INSTANCE=new Elvis();
private static final int CURRENT_YEAR=Calendar.getInstance().get(Calendar.YEAR);
private final int beltSize;
private Elvis(){
beltSize=CURRENT_YEAR-1930;
}
private int beltSize(){
return ...
首先建一张表:
但是发现忘记设置主键了,不过没有关系,接着:
接下来想添加一列:
再接下来想删除掉这个新添加的列:
你删除的时候会提示你,有默认约束依赖该字段,那么你需要先删除默认约束(错误提示里会有默认约束名),再删除字段:
ALTER TABLE 表名 DROP CONSTRAINT 默认约束名
ALTER TABLE 表名 DROP COLUMN 字段名
函数参数中的数组和指向数组的指针
- 博客分类:
- C语言
大家在向函数中传递数组的时候,一般有两种方式形参模式。
1:传递数组:例如函数定义为:void fun(int array[100])
则可以这样传递实参:int array[100]={0};
fun(array);
2:传递指向数组的指针:例如函数定义为:void fun(int *array)
...
看个实际例子:将表test中的userName重复的记录删掉:
上面的例子不太全面有bug,因为如果userName相同但是height不同的话会被误删。所以应该这样:
********************************************************************************************
mysql> select * from duplicate;+----+-------+| id | name |+----+-------+| 1 | wang | | 2 | wang | ...
Java是值传递还是引用传递的分析
- 博客分类:
- Java解惑
先看一下代码,猜猜下面的程序会输出什么?
package com.wjy.test;
public class Batman extends Father{
private int index;
public Batman(int index){
this.index=index;
}
private static void change(StringBuffer d)
{
d=new StringBuffer("ni ...
根据先序和中序重建二叉树并输出后序(不完美版)
- 博客分类:
- 小小算法
存在的问题:若根据先序遍历结果和中序遍历结果无法重建二叉树应该输出NO。但是它还做不到。
代码如下:
#include <stdio.h>
#include<iostream>
using namespace std;
typedef struct ListNode{
int value;
struct ListNode* pLeftChild;
struct ListNode* pRightChild;
}ListNode;
void lastSearch(ListNode *pHead)
{
if(pHe ...