基础

来源:互联网 发布:keep软件官方下载 编辑:程序博客网 时间:2024/05/21 15:50

1:getContextPath()==/siadmin

getServletPath()==/electronic/managerBusinessSave.do
getRealPath==/app/wasapp/profiles/server1/installedApps/p615appCell01/SI_EA_Admin.ear/SI_WA_Admin.war

getRequestURI==/siadmin/electronic/managerBusinessSave.do

2:一个list,有学生对象,学生对象里有age属性,如何按照age排序

建立User对象:

public class User {


String name;
int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

}

建立比较器:

import java.util.Comparator;

public class ComparatorUser implements Comparator {
@Override
public int compare(Object o1, Object o2) {
// TODO Auto-generated method stub
User user1 = (User)o1;
User user2 = (User)o2;
int flag = 0;
if(user1.getAge()>user2.getAge()){
flag = 1;
return flag;
}else if(user1.getAge()==user2.getAge()){
flag = 0;
return flag;
}else if(user1.getAge()<user2.getAge()){
flag = -1;
return flag;
}
return flag;
}
}

主方法排序list

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class test01 {
public static void main(String args[]){
List liststudent = new ArrayList();
User user1 = new User();
user1.setAge(1);
user1.setName("ss");
liststudent.add(user1);
user1 = new User();
user1.setAge(4);
user1.setName("xiaoming");
liststudent.add(user1);
user1 = new User();
user1.setAge(3);
user1.setName("chenchen");
liststudent.add(user1);

Collections.sort(liststudent,new ComparatorUser());

for(int j=0;j<liststudent.size();j++){
User user = (User)liststudent.get(j);
System.out.println("name=="+user.getName()+":age=="+user.getAge());
}
}
}


3:从某一个已经存在的网站上,下载图片,保存到本地。

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;


public class DownloadImage {

public static void main(String args[]) throws IOException{
try {
//连接URL
URL url = new URL("http://n.sinaimg.cn/cece9e13/20150702/0702_zyc_iNiuguLogo.jpg");
//打开连接
URLConnection con = url.openConnection();
//设置超时时间
con.setConnectTimeout(6*1000);
//获取输入流
InputStream input = con.getInputStream();
//创建本地文件
File dirfile = new File("c:\\image\\");
if(!dirfile.exists()){
dirfile.mkdir();
}
int len;
byte[] bs = new byte[1024];
//输出本地新文件
OutputStream out = new FileOutputStream(dirfile.getPath()+"\\"+"aa.gif");

while((len=input.read(bs))!=-1){
out.write(bs, 0 , len);
}

input.close();
out.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


}



4:冒泡排序算法


public static void main(String args[]){
  int temp =0;
  int [] a = new int[]{12,4,5,6,7,43,21,34,67,31};


  for(int i=0;i<a.length;i++){
    for( int j=0;j<a.length-i-1;j++){
       if(a[j]>a[j+1]){


         temp = a[j];
         a[j] = a[j+1];
         a[j+1] = temp;
}


}
}
 for(int k=0;k<a.length;k++){
   System.out.println("排序后数组为:"+a[k]);
}
}


6:二叉树


package com.bmcc.sms;  
  
import java.util.LinkedList;  
import java.util.List;  
  
/** 
 * 功能:把一个数组的值存入二叉树中,然后进行3种方式的遍历 
 *   
 *  
 */  
public class BinTreeTraverse2 {  
  
    private int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };  
    private static List<Node> nodeList = null;  
  
    /** 
     * 内部类:节点 
     *  
     *  
     */  
    private static class Node {  
        Node leftChild;  
        Node rightChild;  
        int data;  
  
        Node(int newData) {  
            leftChild = null;  
            rightChild = null;  
            data = newData;  
        }  
    }  
  
    public void createBinTree() {  
        nodeList = new LinkedList<Node>();  
        // 将一个数组的值依次转换为Node节点  
        for (int nodeIndex = 0; nodeIndex < array.length; nodeIndex++) {  
            nodeList.add(new Node(array[nodeIndex]));  
        }  
        // 对前lastParentIndex-1个父节点按照父节点与孩子节点的数字关系建立二叉树  
        for (int parentIndex = 0; parentIndex < array.length / 2 - 1; parentIndex++) {  
            // 左孩子  
            nodeList.get(parentIndex).leftChild = nodeList  
                    .get(parentIndex * 2 + 1);  
            // 右孩子  
            nodeList.get(parentIndex).rightChild = nodeList  
                    .get(parentIndex * 2 + 2);  
        }  
        // 最后一个父节点:因为最后一个父节点可能没有右孩子,所以单独拿出来处理  
        int lastParentIndex = array.length / 2 - 1;  
        // 左孩子  
        nodeList.get(lastParentIndex).leftChild = nodeList  
                .get(lastParentIndex * 2 + 1);  
        // 右孩子,如果数组的长度为奇数才建立右孩子  
        if (array.length % 2 == 1) {  
            nodeList.get(lastParentIndex).rightChild = nodeList  
                    .get(lastParentIndex * 2 + 2);  
        }  
    }  
  
    /** 
     * 先序遍历 
     *  
     * 这三种不同的遍历结构都是一样的,只是先后顺序不一样而已 
     *  
     * @param node 
     *            遍历的节点 
     */  
    public static void preOrderTraverse(Node node) {  
        if (node == null)  
            return;  
        System.out.print(node.data + " ");  
        preOrderTraverse(node.leftChild);  
        preOrderTraverse(node.rightChild);  
    }  
  
    /** 
     * 中序遍历 
     *  
     * 这三种不同的遍历结构都是一样的,只是先后顺序不一样而已 
     *  
     * @param node 
     *            遍历的节点 
     */  
    public static void inOrderTraverse(Node node) {  
        if (node == null)  
            return;  
        inOrderTraverse(node.leftChild);  
        System.out.print(node.data + " ");  
        inOrderTraverse(node.rightChild);  
    }  
  
    /** 
     * 后序遍历 
     *  
     * 这三种不同的遍历结构都是一样的,只是先后顺序不一样而已 
     *  
     * @param node 
     *            遍历的节点 
     */  
    public static void postOrderTraverse(Node node) {  
        if (node == null)  
            return;  
        postOrderTraverse(node.leftChild);  
        postOrderTraverse(node.rightChild);  
        System.out.print(node.data + " ");  
    }  
  
    public static void main(String[] args) {  
        BinTreeTraverse2 binTree = new BinTreeTraverse2();  
        binTree.createBinTree();  
        // nodeList中第0个索引处的值即为根节点  
        Node root = nodeList.get(0);  
  
        System.out.println("先序遍历:");  
        preOrderTraverse(root);  
        System.out.println();  
  
        System.out.println("中序遍历:");  
        inOrderTraverse(root);  
        System.out.println();  
  
        System.out.println("后序遍历:");  
        postOrderTraverse(root);  
    }  
  
}  

0 0
原创粉丝点击