面试编程题

来源:互联网 发布:it桔子网 编辑:程序博客网 时间:2024/05/20 00:16

import java.util.Scanner;
public class a4_13{
 public static void main(String[] args){
  System.out.println("请输入一个整数");
  Scanner in=new Scanner(System.in);
  int number=in.nextInt();
  while(number!=0){
   int values=number%10;
   System.out.print(values);
   number=number/10;
  }
  System.out.print("\n数值被颠倒");
 }
}


import java.util.Scanner;


public class A5_13 {
 public static  void main(String[] args){
  Scanner sc=new Scanner(System.in);
  System.out.println("请输入你要排序的数字个数:");
  int number=sc.nextInt();
  int[] arr=new int[number];
  for(int i=0;i<arr.length;i++){
   System.out.println("请输入你的第"+(i+1)+"数字个数:");
    arr[i]=sc.nextInt();
  }
  for(int i=0;i<arr.length-1;i++){
   for(int j=0;j<arr.length-1;j++){  //j=6
 
    if(arr[j]>arr[j+1]){
     int t=arr[j];
     arr[j]=arr[j+1];
     arr[j+1]=t;
    }
   }
  }
  for(int i=0;i<arr.length;i++){
   System.out.println(arr[i]);
  }
 }

}


import java.util.Scanner;

public class A5_15{
 public static void main(String[] args){
  Scanner sc=new Scanner(System.in);
  System.out.println("请输入你要排序的数字个数:");
  int number=sc.nextInt();
  int[] arr=new int[number];
  for(int i=0;i<arr.length;i++){
   System.out.println("请输入你的第"+(i+1)+"数字:");
    arr[i]=sc.nextInt();
  }
  for(int i=0;i<arr.length-1;i++){
   for(int j=i+1;j<arr.length;j++){
    if(arr[i]>arr[j]){
     int t=arr[i];
     arr[i]=arr[j];
     arr[j]=t;
    }
   }
  }
  for(int i=0;i<arr.length;i++){
   System.out.println(arr[i]);
  }
 }
}


48、写一个Singleton出来。
第一种:饱汉模式

public class SingleTon {

    private SingleTon(){

       }

 

    //实例化放在静态代码块里可提高程序的执行效率,但也可能更占用空间

    private final static SingleTon instance = new SingleTon();

    public static SingleTon getInstance(){

       return instance;

    }

}

 

第二种:饥汉模式

public class SingleTon {

    private SingleTon(){}

   

    private static instance = null;//new SingleTon();

   

    public static synchronized SingleTon getInstance(){

       if(instance == null)

           instance = new SingleTon();

       return instance;

    }

}


 

1. 用table显示n条记录,每3行换一次颜色,即1,2,3用红色字体,4,5,6用绿色字体,7,8,9用红颜色字体。
<body>

<table id="tbl">

   <tr><td>1</td></tr>

   <tr><td>2</td></tr>

   <tr><td>3</td></tr>

   <tr><td>4</td></tr>

   <tr><td>5</td></tr>

</table>

</body>

<script type="text/javascript">

   window.onload=function()

        {

               var tbl = document.getElementById("tbl");

               rows = tbl.getElementsByTagName("tr");

               for(i=0;i<rows.length;i++)

               {

                      var j = parseInt(i/3);

                      if(j%2==0) rows[i].style.backgroundColor="#f00";

                      else  rows[i].style.backgroundColor="#0f0";

               }

        }

</script>

1、HTML 的 form 提交之前如何验证数值文本框的内容全部为数字? 否则的话提示用户并终止提交?
<form onsubmit=’return chkForm(this)’>

<input type="text" name="d1"/>

<input type="submit"/>

</form>

<script type=”text/javascript” />   

function chkForm(this)

       {

              var value = thist.d1.value;

              var len = value.length;

              for(var i=0;i<len;i++)

              {

                     if(value.charAt(i)>"9" || value.charAt(i)<"0")

                     {

                            alert("含有非数字字符");

                            return false;

                     }

              }

              return true;

       }

</script>

 
*
这个是先初始化对象。
称为:饿汉式。

Single类一进内存,就已经创建好了对象。
class Single
{
 private static Single s = new Single();
 private Single(){}
 public static Single getInstance()
 {
  return s;
 }
}
*/

//对象是方法被调用时,才初始化,也叫做对象的延时加载。成为:懒汉式。
//Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象。
class Single
{
 private static Single s = null;
 private Single(){}
 public static Single getInstance()
 {
  if(s==null)
  {
   synchronized(Single.class)
   {    
    if(s==null)
     s = new Single();
   }
  }
  return s;
 }
}

//记录原则:定义单例,建议使用饿汉式。


//获取文本节点
   
window.onload = function(){
    
    
//文本节点一定是元素节点的子节点.
    
    
//1. 获取文本节点所在的元素节点
    
var bjNode = document.getElementById("bj");
    
    

//2. 通过 firstChild 定义为到文本节点
    
var bjTextNode = bjNode.firstChild;
    
    
//3. 通过操作文本节点的 nodeValue 属性来读写文本节点的值.
    
alert(bjTextNode.nodeValue);
    
    

bjTextNode.nodeValue = "尚硅谷";
    
    
//alert(bjTextNode);
   }
 


Union和Union All的区别。

select *
from student
where id < 4

union

select *
from student
where id > 2 and id < 6

结果将是

1    Aaron    78
2    Bill    76
3    Cindy    89
4    Damon    90
5    Ella    73

如果换成Union All连接两个结果集,则返回结果是:

1    Aaron    78
2    Bill    76
3    Cindy    89
3    Cindy    89
4    Damon    90
5    Ella    73

可以看到,Union和Union All的区别之一在于对重复结果的处理。

 
3.分页语句
取出sql表中第31到40的记录(以自动增长ID为主键)

sql server方案1:

    select top 10 * from t where id not in (select top 30 id from t order by id ) orde by id

sql server方案2:

    select top 10 * from t where id in (select top 40 id from t order by id) order by id desc

 

mysql方案:select * from t order by id limit 30,10

 

oracle方案:select * from (select rownum r,* from t where r<=40) where r>30


[语法格式]
--declare
  --声明的变量、类型、游标
begin
  --程序的执行部分(类似于java里的main()方法)
  dbms_output.put_line('helloworld');
--exception
  --针对begin块中出现的异常,提供处理的机制
  --when .... then ...
  --when  .... then ...
end;


1. 使用一个变量

declare
  --声明一个变量
  v_name varchar2(25);
begin
  --通过 select ... into ... 语句为变量赋值
 select last_name into v_name
 from employees
 where employee_id = 186;
 
 -- 打印变量的值
 dbms_output.put_line(v_name);
end;


一个helloworld级别的触发器
create or replace trigger hello_trigger
after
update on employees
for each row
begin
    dbms_output.put_line('hello...');
    --dbms_output.put_line('old.salary:'|| :OLD.salary||',new.salary'||:NEW.salary);
end;
然后执行:update employees set salary = salary + 1000;





0 0
原创粉丝点击