小编Boa*_*ann的帖子

如何以循环顺序循环?

假设:

int id = 2;
for (int i = 0; i < 4; i++) {
    System.out.println(i);
}
Run Code Online (Sandbox Code Playgroud)

它以0,1,2,3的顺序输出.

我如何让它开始id并环绕以给出输出2,3,0,1?

java for-loop

0
推荐指数
1
解决办法
384
查看次数

为什么 .sort() 在按字母顺序对某些数组进行排序时表现不正确?

我遇到了一个奇怪的 JavaScript 行为。如果我尝试使用 进行排序 ['a', 'b','c', 'd', 'e', 'f', 'g', 'h','i', 'j'][].sort((a, b) => a > b)它会返回正确排序的数组(在本例中,与之前完全相同),但如果我向数组中添加一项,例如:

['a', 'b','c', 'd', 'e', 'f', 'g', 'h','i', 'j', 'k'].sort(
  (a, b) => a > b
)
Run Code Online (Sandbox Code Playgroud)

它返回:

["f", "a", "b", "c", "d", "e", "g", "h", "i", "j", "k"]

奇怪的是,如果我将“l”添加到数组中,它会返回:

["g", "a", "b", "c", "d", "e", "f", "h", "i", "j", "k", "l"] (“f”现在位于正确的位置,但“g”不是 oO)

如果我.sort在不提供比较器的情况下使用该方法,它会正确排序,但这对我来说没有用,因为我实际上是在尝试按属性对对象数组进行排序,例如:

[{ firstName: 'Peter' }, { firstName: 'Alfred' }]

有谁知道为什么会发生这种情况?

javascript arrays sorting

0
推荐指数
1
解决办法
383
查看次数

为什么这个HashSet代码片段会以这种方式运行?

给出以下代码:

public class NewClass {

    public static void main(String[] args) {
        List<String> fruits = Arrays.asList("Orange", "Pineapple", "Banana", "Banana");
        Set<String> fruitsSet = new HashSet<>();

        for (String fruit : fruits) {
            fruitsSet.add(fruit);
        }

        for (String fruit : fruitsSet) {
            System.out.println(fruit);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

每次运行代码时,元素的顺序都是相同的,消除了重复项Banana,这是典型的HashSet实现:

Banana
Pineapple
Orange
Run Code Online (Sandbox Code Playgroud)

我的问题是,为什么订单每次都相同,因为规范说"它不能保证集合的迭代顺序"(https://docs.oracle.com/javase/7/docs/api/ java/util/HashSet.html)

java hashset

0
推荐指数
1
解决办法
42
查看次数

Java - 为什么输出为空?

我创建一个这样的枚举数组:

 enum MyEnums {
        FIRST, SECOND, THIRD, FOURTH;
 }
 public class MyEnumsTest {
     public static void main(String[] args) throws Exception {
            MyEnums[] myEnums = new MyEnums[4];
            for(int i = 0; i< myEnums.length; i++) {
                System.out.println(myEnums[i]);
            }
     }
 }
Run Code Online (Sandbox Code Playgroud)

但为什么输出为null,null,null和null?我如何通过myEnums [i] .FIRST获取元素?

java enums

0
推荐指数
1
解决办法
91
查看次数

这里发生了什么?

有效的印度手机号码规则:

该数字应包含10或11或12位数字。

如果包含10位数字,则第一位数字应为7或8或9。

如果它包含11位数字,则第一个数字应为0,然后遵循第二个规则。

如果包含12位数字,则前两位数字应为91,然后遵循第二条规则。

对于测试用例:

1
881906355596
Run Code Online (Sandbox Code Playgroud)

此代码应产生Invalid,但显示为Valid。

import java.util.*;
import java.lang.*;
import java.io.*;
class GFG
 {
    public static void main (String[] args)
     {
     Scanner scan = new Scanner(System.in);
     int t=scan.nextInt();
     while((t--)!=0){

         String s = scan.next();
         int length = s.length();

         if((length==10) &&((s.charAt(0)=='7')||(s.charAt(0)=='9')||(s.charAt(0)=='8')))
         System.out.println("Valid");

         else if((length==11) &&(s.charAt(0)=='0')&&(s.charAt(0)=='7')||(s.charAt(0)=='9')||(s.charAt(0)=='8'))
         System.out.println("Valid");//code

         else if((length==12) &&(s.charAt(0)=='9')&&(s.charAt(1)=='1'))
         System.out.println("Valid");//code

         else System.out.println("Invalid");
     }
     }
}
Run Code Online (Sandbox Code Playgroud)

java string logical-operators

0
推荐指数
1
解决办法
120
查看次数

什么十六进制代码.java文件开头?

我正在尝试获取"神奇数字"(表示文件格式的字节)...我确实尝试在十六进制编辑器中打开文件.但我一开始只得到"70 75".那是错的.我正在做作业,找不到合适的十六进制代码.我对十六进制编辑器没有多少经验.

java hex hex-editors magic-numbers

-1
推荐指数
1
解决办法
289
查看次数

我的 do/while 循环不起作用

所以我有一个 do-while 循环,它应该读取用户输入。如果用户输入 J 那么它应该要求用户输入 2 个数字来计算它们,但是如果用户输入 N 那么它应该停止循环。知道为什么它不起作用吗?

if (input.equalsIgnoreCase("J")) {
    do
    {
        status=true;
    }
    while (status);{
        if (input.equalsIgnoreCase("N"))
            status = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

完整代码:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        boolean status=true;
        while (status){
            Scanner minScanner1 = new Scanner(System.in);  // mina scanners som tar in userinput
            Scanner scanner2 = new Scanner(System.in);
            System.out.println("Skriv in ditt nummer en och en :\n"); //obivous

            double nr1 = minScanner1.nextDouble(); // int nr 1 lagrar det userinput skriver …
Run Code Online (Sandbox Code Playgroud)

java do-while

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

为什么const初始化器不能为nil?

我的类型A基本上是一个简单的地图:

type A map[int32]struct{}
Run Code Online (Sandbox Code Playgroud)

现在,我想拥有这种类型的特殊价值,以便能够对其有所不同。我认为使用nil此提议会很明智(此外,通过这种方式,所有类型的所有未初始化变量都A将具有此值,这也是我想要的值):

const s A = nil
Run Code Online (Sandbox Code Playgroud)

但是我得到了

const初始化器不能为nil

当然,我可以接受这一点,并以多种不同的方式重构程序。但是我仍然想知道为什么不可能初始化constnil?一定有架构上的原因,但我看不到。

(请注意,我更喜欢“重命名”,nil而不是直接使用它,原因仅在于该名称nil对我而言不是很直观)。

go

-2
推荐指数
1
解决办法
160
查看次数

如果 DEBUG = False,为什么 Django 不加载静态文件?

我的 CSS 没有加载,然后我将 DEBUG 更改为 True,它起作用了。

我的问题是,如果我有一个实际的服务器并且 DEBUG = False,CSS 将不会加载。

DEBUG 设置与静态文件有什么关系?无论 DEBUG 是 True 还是 False,它都应该加载静态文件。

django

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

可以使用header()创建任何应用程序而无需输出缓冲

每次我用PHP创建网站或应用程序时,我必须使用header()函数将人们从一个页面重定向到另一个页面,但由于在我发现自己必须使用减慢页面速度的输出缓冲功能之前,几乎总是发送典型的标题.它要么是抑制"已发送标头"错误.我真的找不到任何可以在PHP中构建应用程序而不必违反这两者的示例.

我试图了解更多,关于如何在不使用输出缓冲的情况下重定向到页面.

编辑

这就是一些人认为可能的.

<?php
$stack_errors = NULL;
if($_POST && isset($_POST['username']) && isset($_POST['password'])){

 $stmt = $pdo->prepare('SELECT * FROM users where username = ? AND password = ?');
 $stmt->execute(array($_POST['username'], $_POST['password']);
 if($stmt->rowCount() == 0){
   $stack_errors = 'error, username or password is incorrect';
 }else{
   $stack_errors = false; 
 }
}else{
  $stack_errors = 'please enter username and password to log in';
}
if(false === $stack_errors){
  header('Location: /success.php');
  exit;
}
?>
<html> 
<head></head>
<body>
<form>
 <input ...>
 <input ...>
 <?php if($stack_errors){
   echo $stack_errors; 
 } …
Run Code Online (Sandbox Code Playgroud)

php

-5
推荐指数
1
解决办法
69
查看次数