小编use*_*own的帖子

生成有限制的随机数

我是一般的编程新手,所以我试图在这个问题上尽可能具体.这本书我正在做一些练习.我设法做了他们所说的一半以上,但这只是我一直在努力寻找的一个输入.

我会写问题然后我的代码,

"编写一个创建并打印XXX-XXX-XXXX表格的随机电话号码的应用程序.在输出中包含破折号.不要让前三个数字包含8或9(但不要比那个更严格) ),并确保第二组三位数不大于742. 提示:通过最简单的方式构建电话号码.每个数字不必单独确定. "

好的,突出显示的句子就是我正在看的内容.这是我的代码:

import java.util.Random;
public class PP33 {
  public static void main (String[] args) {
    Random rand = new Random();

    int num1, num2, num3;

    num1 = rand.nextInt (900) + 100;
    num2 = rand.nextInt (643) + 100;
    num3 = rand.nextInt (9000) + 1000;

    System.out.println(num1+"-"+num2+"-"+num3);
  }
}
Run Code Online (Sandbox Code Playgroud)

我怎么想这样做?我在第3章,所以我们尚未讨论if语句等,但别名,字符串类,包,导入声明,随机类,数学类,格式输出(decimal-和numberFormat),Printf,枚举和包装类+自动装箱.因此,请考虑仅根据这些假设回答问题.

代码没有任何错误.

谢谢!

java random math

4
推荐指数
2
解决办法
3万
查看次数

以递归方式从字符串中删除重复的字符

我需要帮助来确定如何从字符串中删除重复字符.它必须以递归方式完成,这才是真正的问题.

public class FEQ2 {
    /**
     * @param args
     */
    public static void removeDups(String s, int firstChar, int secondChar) {    
        if (s.length() == 1) {  
            System.out.println(s);
        }           
        char a = s.charAt(firstChar);
        if (a == s.charAt(secondChar)) {
            s = a + s.substring(secondChar + 1);
        }
        System.out.println(s);
        removeDups(s, firstChar + 1, secondChar + 1);
        //return s;
    }

    public static void main(String[] args) {
        //System.out.println(removeDups("AAAABBARRRCC", 1));
        removeDups("AAAABBARRRCC", 0 , 1);
    }
}
Run Code Online (Sandbox Code Playgroud)

java

4
推荐指数
1
解决办法
2万
查看次数

有人可以解释参数void(*pfn)(void*)吗?

我遇到过这段代码

inline pthread_t CreateThread(void(*pfn)(void*), void* parg, bool fWantHandle=false)
Run Code Online (Sandbox Code Playgroud)

我不明白这一部分

void(*pfn)(void*)
Run Code Online (Sandbox Code Playgroud)

有人能告诉我这是什么意思吗?

这是btw没有在初学者的书籍中列出,所以如果你想提到阅读书籍,它不存在.

Afaik,void是一个函数的数据类型,意味着它不会返回任何东西,但是那个部分......指针上使用了void?

c++ pointers function-pointers

4
推荐指数
4
解决办法
2231
查看次数

获取整个UITableViewCell的宽度/帧

我有一个方法,我有一个(渲染)UITableViewCell*.我想知道整个细胞的宽度/框架.

cell.frame似乎不起作用 - 它给了我一个随机单元格的框架.我得到的最接近cell.contentView.frame但是它不包括所涵盖的区域accessoryView(参见http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/TableView_iPhone/TableViewCells/TableViewCells.html#//apple_ref/doc/uid/TP40007451-CH7).cell.contentView.superview.frame也不起作用 - 它在某个任意位置给我一个框架就像cell.frame那样.

cell.contentView.width+ cell.accessoryView.width除了附件视图以外的情况下工作UITableViewCellAccessoryNone

任何想法如何UITableViewCell在所有情况下获得整个框架/宽度?

iphone uitableview ios

4
推荐指数
1
解决办法
2万
查看次数

bc及其ibase/obase选项:

我发现我偶然发现了一个奇怪的错误:

我尝试将"512"作为基数6读取,并将其输出为基数16:

echo "ibase=6;obase=16;512" | bc
161
Run Code Online (Sandbox Code Playgroud)

如您所见,输出为161,但它应该是bc(原文如此!).我尝试使用基数10:

echo "ibase=6;obase=10;512" | bc
512
Run Code Online (Sandbox Code Playgroud)

该值保持不变.好奇!默认obase是10.如果我省略它:

echo "ibase=6;512" | bc
188
Run Code Online (Sandbox Code Playgroud)

好吧,这似乎是正确的.在两步过程中,它有效:

echo "obase=16;"$(echo "ibase=6;512" | bc) | bc
BC
Run Code Online (Sandbox Code Playgroud)

所以我为不同的基础制作了一个剧本,但它让我感到困惑:

for ib in {6,8,10,16}; do echo $ib; for ob in {10,16}; do echo -en $ib $ob"     \t => " ; echo "ibase=$ib;obase=$ob;333" | bc ; done; done; 
6
6 10         => 333
6 16         => 108
8
8 10         => 333
8 16         => 119
10
10 10        => …
Run Code Online (Sandbox Code Playgroud)

base bc

4
推荐指数
2
解决办法
2万
查看次数

为什么编译器将字符视为整数?

我有一小段代码.当我在我的DevC++ gnu编译器上运行它时,它显示以下输出:

 main ()
 {      char b = 'a';
        printf ("%d,", sizeof ('a'));
        printf ("%d", sizeof (b));
        getch ();
 }
Run Code Online (Sandbox Code Playgroud)

输出:4,1

为什么被'a'视为整数,而b被视为只是一个字符常量?

c integer

4
推荐指数
1
解决办法
712
查看次数

在Java中使用long转换为byte

我无法理解以下内容:

在java中,

long l = 130L;  
byte b = (byte)l;
Run Code Online (Sandbox Code Playgroud)

如果我打印b的值,为什么我得到-126?长l的位代表是什么?

java integer casting overrun

3
推荐指数
2
解决办法
5625
查看次数

我该如何避免这种忙碌的等待?

public int getChildrenCount(int groupPosition) {
    if(children == null){
        new SalesRequest().execute(); // runs in other thread which 
                                      // initialises children with some value.
        while(children == null){
            // I'm doin this to avoid null pointer Exception.
            // So it comes out of the loop only when childern 
            // gets initialised.
        }
    }
    return children.length;
}
Run Code Online (Sandbox Code Playgroud)

但我对我处理这个问题的方式并不满意.有一个更好的方法吗?

java multithreading android

3
推荐指数
1
解决办法
2066
查看次数

使用Newtonsoft Json.NET解析多维JSON数组

我让Json返回如下:

[{"CreatedBy":"GIS_DB","CreatedDate":"3/8/2012 10:44:00 AM","Id":39,"ModifiedBy":"","ModifiedDate":"","名称":"CF-39","StatusId":1,"TrailCoordinates":[{"CreatedBy":"GIS_DB","CreatedDate":"3/8/2012 10:44:00 AM","Id": 1637年, "纬度":32.76004207, "经度": - 97.34006853, "ModifiedBy": "", "ModifiedDate": "", "SortOrder的":1, "TrailId":39},{ "CreatedBy": "GIS_DB" ,"CreatedDate":"3/8/2012 10:44:00 AM","Id":1638,"Latitude":32.76004333,"经度": - 97.34012121,"ModifiedBy":"","ModifiedDate":" ","SortOrder":2,"TrailId":39}]},{"CreatedBy":"GIS_DB","CreatedDate":"3/8/2012 10:44:00 AM","Id":40, "ModifiedBy": "", "ModifiedDate": "", "名称": "CF-40", "StatusId":1, "TrailCoordinates":[{ "CreatedBy": "GIS_DB", "CreatedDate":"3/8/2012 10:44:00 AM","Id":3755,"纬度":32.76034332,"经度": - 97.3402069,"ModifiedBy":"","ModifiedDate":"","SortOrder":1 ,"TrailId":40},{"CreatedBy":"GIS_DB","CreatedDate":"3/8/2012 10:44:00 AM","Id":3756,"纬度":32.76019181,"经度" :-97.3402448, "ModifiedBy": "", "ModifiedDate": "", "SortOrder的":2 "TrailId":40}]}]

这些是我的班级......

public class Trails
{
    [MonoTouch.Foundation.Preserve]
    public Trails(){ TrailCoord = new List<trailcoords>();}

    [MonoTouch.Foundation.Preserve, JsonProperty("Name")]
    public string TrailName { get; set; }

    [MonoTouch.Foundation.Preserve, JsonProperty("StatusId")]
    public int StatusId { get; …
Run Code Online (Sandbox Code Playgroud)

c# iphone json.net xamarin.ios

3
推荐指数
1
解决办法
1万
查看次数

System.out.println,System.err.println

我有这个代码:

 System.err.print("number of terms =   ");
 System.out.println(allTerms.size());
 System.err.print("number of documents =   ");
 System.out.print("number of documents =   ");
Run Code Online (Sandbox Code Playgroud)

我认为结果应如下:

number of terms = 10
number of documents =1000
Run Code Online (Sandbox Code Playgroud)

但结果是

10
1000
number of terms =   number of documents =
Run Code Online (Sandbox Code Playgroud)

为什么,以及如何解决它?

java

3
推荐指数
1
解决办法
2608
查看次数