189 8069 5689

边界测试java代码 边界测试的重点是什么

java中,实现一个循环队列,其中的边界条件有些弄不明白,请看我的代码:

//我做了一个测试类,你运行一下试试吧

成都创新互联从2013年创立,先为义乌等服务建站,义乌等地企业,进行企业商务咨询服务。为义乌企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

//问题的关键在于这个类的设计似乎是,假设size是3,但是数组的size是4

//putloc是0,但是put的位置在数组中是1

//总觉得这个类的设计很怪,既然size是3,底层实现也做成3就好了。

import java.util.Arrays;

public class CircularQueue {

private char q[];

private int putloc, getloc;

public static void main(String[] args) {

CircularQueue circularQueue = new CircularQueue(3);

circularQueue.put('1');

circularQueue.put('1');

circularQueue.put('1');

circularQueue.put('1');

}

private void paint(String s) {

System.out.println(s + ": putloc=" + putloc + " getloc=" + getloc + " "

+ Arrays.toString(q));

}

public CircularQueue(int size) {

q = new char[size + 1];// 注意:这里数组长度加 1。

putloc = getloc = 0;

paint("create!");

System.out.println();

}

public void put(char ch) {

paint("before put");

if (putloc + 1 == getloc | ((putloc == q.length - 1) (getloc == 0))) { // 第一个边界条件想不清楚,为什么putloc+1==getloc

System.out.println("--Queue is full.");

return;

}

putloc++;

if (putloc == q.length)

putloc = 0;

q[putloc] = ch;

paint("after put");

System.out.println();

}

public char get() {

paint("before get");

if (getloc == putloc) {

System.out.println("--Queue is empty.");

return (char) 0;

}

getloc++;

if (getloc == q.length)

getloc = 0;

paint("after get");

System.out.println();

return q[getloc];

}

}

Java数组边界问题

buf3这个数组你自己定义的长度是1024啊: byte[] buf3 = new byte[1024];

因为你定义了一个1024长度的byte数组,然后再将Hello world!放进去这个数组,但没有放满, 后面全是空的, 所以你再将后面空的byte转成String的时候,就出现乱码.

java问题 1,2,3 8,9,4 7,6,5 这种逻辑通过java代码怎么实现,怎么写

代码:

package com.ufotable.test;

public class Test30 {

private static int l,r,u,d;//定义上下左右边界

private static int[][] a=new int[0][0];//数组

private static int y=0,x=0;//初始化坐标

private static int step,temp;//步长,上一个数组的值

private static void add(int y,int x){

temp+=step;a[y][x]=temp;

}

private static void left(){

while(xl)add(y, --x);//未遇到左边界

if(yu){//遇到左边界且未遇到上边界

l++;up();

}

}

private static void right(){

while(xr)add(y, ++x);//未遇到右边界

if(yd){//遇到右边界且未遇到下边界

r--;

down();

}

}

private static void up(){

while(yu)add(--y, x);//未遇到上边界

if(xr){//遇到上边界且未遇到右边界

u++;

right();

}

}

private static void down(){

while(yd)add(++y, x);//未遇到下边界

if(xl){//遇到下边界且未遇到左边界

d--;

left();

}

}

private static void fun(int start,int step,int length){//产生数组(起始值,步长,矩阵边长)

Test30.step=step;

l=u=0;r=d=length-1;

a=new int[length][length];

a[0][0]=temp=start;

up();

}

public static void print(){//输出矩阵

for(int i=0;ia.length;i++){

for(int j=0;ja.length;j++){

System.out.print(a[i][j]+"\t");

}System.out.println();}

}

public static void main(String[] args) {

fun(0,1,10);//测试

print();

}

}

输出结果:

java设定物体运动边界 代码

你这个x,y是在方法内部定义的一个变量 没有赋值就使用当然编译不通过咯

要想使用必须要先实例化。、

代码具体要怎么写 要看你的业务逻辑!


本文题目:边界测试java代码 边界测试的重点是什么
本文URL:http://jkwzsj.com/article/ddjoiie.html

其他资讯