Java switch-case语句用法
switch(表达式)
{
case 常量表达式1:语句1;
....
case 常量表达式2:语句2;
default:语句;
}
1、switch-case语句完全可以与if-else语句互转,但通常来说,switch-case语句执行效率要高。
2、default就是如果没有符合的case就执行它,default并不是必须的.
3、case后的语句可以不用大括号.
4、switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型.
5、一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break,利用这一特性可以让好几个case执行统一语句.
原理归原理,下面是几个容易混淆的例子.
1.标准型(case后面都有break语句)
int i=3;
switch(i)
{
case 1:
System.out.println(1);
break;
case 2:
System.out.println(2);
break;
case 3:
System.out.println(3);
break;
default:
System.out.println("default");
break;
}
输出结果:
3
2.特殊型1(不是完全有break语句,可以完成一些特殊应用)
int year=20xx;
int month=3;
int day;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 2:
day=28;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
}
这里 day=31;
3.特殊型2(default的位置)
int i=1;
switch(i)
{
case 1:
System.out.println(1);
default:
System.out.println("default");
case 2:
System.out.println(2);
break;
case 3:
System.out.println(3);
break;
}
输出结果:
1
default
2
------------------------------------------------------------------------------------------------- 实例介绍:
1)
1public class Switch {
输出结果如下:
1
2
3)
输出结果如下:
1
2
default
总结:
switch表达式的值决定选择哪个case分支,如果找不到相应的分支,就直接从"default" 开始输出。
当程序执行一条case语句后,因为例子中的case分支中没有break 和return语
JavaScript语句代码
JavaScript内置对象和操作
数组的操作:
得到数组长度 var len = array.length;
将元素添加到数组开头:array.unshift(要添加的对象);
将元素添加到数组的末尾:array.push(要添加的对象);
删除数组第一个元素:array.shift();
删除数组最后一个元素:array.pop();
删除指定的元素:Array a = array.splice(起始索引,删除的个数);splice方法会将新的数组返回 得到数组片段:array.slice(起始索引,个数);
翻转数组:array.reverse();
将数组的元素连接array.join(“连接符”)(连接符不填的话默认为逗号,)
数组元素的排序array.sort();(由小到大)
字符串对象的操作:
获取字符串的长度:str.length;(length为属性,不是函数)
字符串的截取:str.stringsubstring(起始索引,位数-1)
字符串的替换:str.replace(“原始字符串”,”替换字符串”);
大小写转换:str.toLowerCase(); str.toUpperCase();
将字符串转换为数组:str.split(“分割符”)
数学运算:
小数取整:Math.ceil(小数)向上取整
Math.floor(小数)向下取整
得到随机数:var num = Math.random();
最大值var max = Math.max(num1,num2,num3…………)
最小值var min = Math.min(num1,num2,num3…………)
window对象属性及方法(window.可以省略)
显示提示信息:alert(提示信息);
弹出确认框:confirm(提示信息);
弹出输入框:prompt(提示信息);
窗口状态栏:window.status=”提示信息”
延迟执行:setTimeout(函数名,延迟时间)
定时循环执行:setInterval(函数名,间隔时间);
窗口状态栏:window.status=”提示信息”
setTimeout(函数名,延迟时间)
DOM对象操作
节点的引用:
通过ID获得节点引用:document.getElementBy(id)
通过name获得节点集合的引用:document.getElementsByName(name)
通过标签名获得节点集合的引用:document.getELementsByTagName(TagName)
引用父节点:node.getParentNode;
引用第一个子节点:node.firstChild
引用最后一个子节点:node.lastChild
引用全部子节点结合:node.childNodes
引用相邻的前一个节点:node.previousSibling
引用相邻的后一个节点:node.nextSibling
对节点的操作
创建元素节点: document.createElement(标签名)
创建文本节点:document.createTextNode(文本内容)
添加节点:node.appendChild(要添加的节点)
插入子节点: parent.insertBefore(需要插入的节点,要插入的当前节点)
替换子节点:node.replaceChild(新节点,被替换的节点)
复制节点:var cloneNode=node.cloneNode();
删除子节点:parentNode.removeChild(要删除的节点)
读取节点属性:node.getAttribute(属性名称)
添加或修改节点属性:node.setAttribute(属性名称,属性值)
删除节点的属性:node.removeAttribute(要删除的属性名称)
设置节点的html内容:node.innerHTML="html内容";
设置节点的文本内容:node.innerText="文本内容";
样式控制
设置节点的样式:node.className=样式名字
设置背景色:node.style.backgroundColor=”red”
设置文字颜色:node.style.color=”green”
设置相对或者绝对位置:node.style.position="p"
p=absolute(绝对)或者relative(相对)
设置元素的x坐标:node.style.left=距离+"px"
设置元素的y坐标:node.style.top=距离+"px"
设置元素的高度:node.style.height=高度+"px"
设置元素的宽度:node.style.width=宽度+"px"
添加事件处理(以下方法均用click作为例子,注意有的需要加on,有的不需要)
(1)在html代码内给元素内添加事件 : <input type=”button” onclick=”test()”/>
(2)通过给node的属性赋值来绑定事件 : node.onclick=函数名
(3)火狐的事件绑定,IE不支持:obj.addEventListener(click,处理函数名称,false); (不加on)
(4)IE的事件绑定,火狐不支持:obj.attachEvent(onclick, 处理函数名称)(加on)
注销事件处理
(1)node.onclick=null;
(2)obj.removeEventListener(click,处理函数名称,false);(FF支持,IE不支持)
(3)obj.detachEvent(onclick,处理函数名称);(IE支持,FF不支持)
兼容IE和FF的常用代码总结
(1)获取鼠标的x,y坐标(兼容IE和FF)
var mouseX= (document.body.scrollLeft||document.documentElement.scrollLeft)+evt.clientX; var mouseY = (document.body.scrollTop || document.documentElement.scrollTop) + evt.clientY;
(2)获取事件模型event(兼容IE和FF)
function getEvent(event){
} var evt = event || window.event;
(3)获取发出事件的源对象(兼容IE和FF)
function getTarget(event){
} var evt = event || window.event; var target = evt.target || evt.srcElement; alert(target.value);
(4)获取XMLHttpRequest对象(兼容IE和FF)
if(window.XMLHttpRequest){
} xmlhttp=new XMLHttpRequest(); xmlhttp=new ActiveXObject('Microsoft.XMLHTTP'); }else{
(5)通过ajax方式发送请求
if(xmlhttp){
xmlhttp.open("POST","Ajaxserver",true);设置请求方式,请求URI,是否异步 var parm=name+","+wish+","+color;设置发送参数 //设置发送的头信息 xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlhttp.send("name=" + parm);发送参数
xmlhttp.onreadystatechange=callback;设置状态变化事件,callback为回调函数
}
function callback(){
} if(xmlhttp.readyState==4){ var result=xmlhttp.responseText;获得服务器返回的结果 }
with用法小结一、with表拥有某物1、Marymarriedamanwithalotofmoney.马莉嫁给了一个有着很多钱的…
1具有带有havingcarryingSoonhecametoariverwithawoodenbridgeoverit不久他来到…
with用法小结一with表拥有某物Marymarriedamanwithalotofmoney马莉嫁给了一个有着很多钱的男人Io…
with用法小结四with表原因或理由Johnwasinbedwithhighfever约翰因发烧卧床Hejumpedupwith…
with用法小结一with表拥有某物Marymarriedamanwithalotofmoney马莉嫁给了一个有着很多钱的男人Io…
Because注意一汉语可以说“因为??所以??”,但是英语却不能使用because?so?这样的结构。改正的办法是,要么去掉其中…
as...as...结构用法讲解一、as?as结构的基本用法其基本意思为“与??一样”,其中的第一个as副词,其后通常接形容词或副…
高考常见词as用法总结近几年高考中有关as一词的题目出现过很多次,其中as或是最佳选项,或是干扰项,或是题干中的关键信息点,涉及a…
As用法专练1.Itisgenerallybelievedthatteachingis____itisascience.A.muc…
SQL中withas的用法——使用公用表表达式(CTE)公用表表达式(CTE)可以认为是在单个SELECT、INSERT、UPDA…
工作上事情太多,难免繁琐,难免被人抱怨,被人投诉。仔细想想,需要改进的地方的确很多。毕业四年多了,从最基础的windows局域网维…