小编fra*_*a66的帖子

String.equals与==

此代码将字符串分隔为标记并将它们存储在字符串数组中,然后将变量与第一个主页进行比较...为什么它不起作用?

public static void main(String...aArguments) throws IOException {

    String usuario = "Jorman";
    String password = "14988611";

    String strDatos = "Jorman 14988611";
    StringTokenizer tokens = new StringTokenizer(strDatos, " ");
    int nDatos = tokens.countTokens();
    String[] datos = new String[nDatos];
    int i = 0;

    while (tokens.hasMoreTokens()) {
        String str = tokens.nextToken();
        datos[i] = str;
        i++;
    }

    //System.out.println (usuario);

    if ((datos[0] == usuario)) {
        System.out.println("WORKING");
    }
}
Run Code Online (Sandbox Code Playgroud)

java string

515
推荐指数
16
解决办法
80万
查看次数

MySQL - 在一个查询中更新具有不同值的多个行

我试图了解如何使用不同的值更新多行,我只是不明白.解决方案无处不在,但对我来说,它看起来很难理解.

例如,三个更新为1个查询:

UPDATE table_users
SET cod_user = '622057'
    , date = '12082014'
WHERE user_rol = 'student'
    AND cod_office = '17389551'; 

UPDATE table_users
SET cod_user = '2913659'
    , date = '12082014'
WHERE user_rol = 'assistant'
    AND cod_office = '17389551'; 

UPDATE table_users
SET cod_user = '6160230'
    , date = '12082014'
WHERE user_rol = 'admin'
    AND cod_office = '17389551'; 
Run Code Online (Sandbox Code Playgroud)

了一个例子,但我真的不明白如何进行查询.即:

UPDATE table_to_update
SET cod_user= IF(cod_office = '17389551','622057','2913659','6160230')
    ,date = IF(cod_office = '17389551','12082014')
WHERE ?? IN (??) ;
Run Code Online (Sandbox Code Playgroud)

如果在WHERE和IF条件中存在多个条件,我不完全清楚如何进行查询.任何想法?

mysql sql sql-update

118
推荐指数
5
解决办法
23万
查看次数

通过Python中的套接字发送文件

我正在尝试在Python中创建一个实现套接字的程序,每个客户端发送一个PDF文件,服务器接收它,标题更改为"file_number.pdf"(即:file_1.pdf).提出的问题是只有客户端才能成功发送文件.当第二个客户端尝试发送程序时崩溃.我做错了什么,如何解决我的代码以允许N个客户端(N <20)连接到服务器并传输文件?

这是服务器代码:

import socket
import sys
s = socket.socket()
s.bind(("localhost",9999))
s.listen(10) # Acepta hasta 10 conexiones entrantes.
sc, address = s.accept()

print address
i=1
f = open('file_'+ str(i)+".pdf",'wb') # Open in binary
i=i+1
while (True):

    # Recibimos y escribimos en el fichero
    l = sc.recv(1024)
    while (l):
        f.write(l)
        l = sc.recv(1024)
f.close()

sc.close()
s.close()
Run Code Online (Sandbox Code Playgroud)

这是客户端代码:

import socket
import sys

s = socket.socket()
s.connect(("localhost",9999))
f = open ("libroR.pdf", "rb")
l = f.read(1024)
while (l):
    s.send(l)
    l = f.read(1024)
s.close()
Run Code Online (Sandbox Code Playgroud)

为了简化我的代码,我总是使用一个文件名为"libroR.pdf"的书,但在完整的代码中,它是由图形用户界面选择的.

python sockets

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

优化C代码

对于高性能计算课程的分配,我需要优化以下代码片段:

int foobar(int a, int b, int N)
{
    int i, j, k, x, y;
    x = 0;
    y = 0;
    k = 256;
    for (i = 0; i <= N; i++) {
        for (j = i + 1; j <= N; j++) {
            x = x + 4*(2*i+j)*(i+2*k);
            if (i > j){
               y = y + 8*(i-j);
            }else{
               y = y + 8*(j-i);
            }
        }
    }
    return x;
}
Run Code Online (Sandbox Code Playgroud)

使用一些建议,我设法优化代码(或至少我认为如此),例如:

  1. 不断传播
  2. 代数简化
  3. 复制传播
  4. 常见的Subexpression消除
  5. 死代码消除
  6. 循环不变量删除
  7. 按位移位而不是乘法,因为它们更便宜.

这是我的代码:

int …
Run Code Online (Sandbox Code Playgroud)

c optimization performance bit-shift compiler-optimization

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

使用fopen打开文件,在Windows上给定绝对路径

我正在尝试创建一个计算文件行数的程序,当我尝试将绝对路径传递给fopen函数时,只是告诉我找不到,这是我的代码:

#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main(int argc, char *argv[])
{
    int i=0;
    char array[100];

        char caracteres[100];
        FILE *archivo;
        archivo = fopen("C:\Documents and Settings\juegos psps.txt","r");
        if (archivo == NULL){cout<<"Dont Work";}
        while (feof(archivo) == 0)
        {
                fgets(caracteres,100,archivo);
                i++;
                }
                cout << "Number of lines:" << i ;
                return 0;
}
Run Code Online (Sandbox Code Playgroud)

我应该如何将绝对路径传递给我的程序,以便打开文件?

c++ windows fopen file relative-path

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

用非常小的值计算matlab中的函数

我在matlab中创建一个函数来计算以下函数:

在此输入图像描述

对于这个功能,我们有:

在此输入图像描述

这是我在matlab中实现的功能:

function [b]= exponential(e)
%b = ? 
b= (exp (e) -1)/e;
Run Code Online (Sandbox Code Playgroud)

当我用非常小的值测试函数时,实际上函数的极限是1,但是当数字非常小(例如1*e-20)时,极限变为零?这种现象有什么解释?难道我做错了什么?.

x= 10e-1 , f (x)= 1.0517

x= 10e-5 , f (x)=  1.0000

x= 10e-10 , f (x)=  1.0000

x= 10e-20 , f (x)=  0
Run Code Online (Sandbox Code Playgroud)

precision matlab epsilon exponential

10
推荐指数
2
解决办法
7068
查看次数

如何使用[R]中的函数曲线绘制正态曲线图?

我正在尝试在[R]中制作直方图,以及描述直方图的正常曲线如下:

w<-rnorm(1000) 
hist(w,col="red",freq=F,xlim=c(-5,5))
curve(dnorm(w),-5,5,add=T,col="blue")
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试通过曲线函数绘制正常曲线时,显示以下错误:

Error en curve(dnorm(w), -5, 5, add = T, col = "blue") : 
  'expr' must be a function, or a call or an expression containing 'x'
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

r normal-distribution histogram

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

解密哈希sha256加密,知道盐

我正在为Web应用程序创建一个登录系统.要在DB中存储密码,我使用sha256加密密码,如下所示:

$salt ="sometext";
$escapedPW="userpass";
$saltedPW =  $escapedPW . $salt;
$hashedPW = hash('sha256', $saltedPW);
echo "<center>".$hashedPW."</center>";
Run Code Online (Sandbox Code Playgroud)

在数据库中,我存储用户,用户的密码和用于制作哈希的盐并验证用户的登录.现在我正在使用密码向用户发送电子邮件,但是当用户收到电子邮件时,由于存储在sha256加密密码中,用户会收到一个长字符串,而不是用户所谓的密码知道.

我的问题是,我有什么方法可以发送实际的用户密码和非密码加密,也就是说,如果我知道盐,有一些方法可以反向sha256?如果不可能,建议您使用何种加密方法来完成加密密钥的反转并通过电子邮件将实际密码发送给用户.

php login sha256 password-encryption

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

C语言中memset函数的复杂性

我和一些朋友讨论了一段代码,我们讨论了在C中使用memset函数,如果我们初始化一个大小为N的数组,这个函数的Big-O表示法的顺序是什么?

c complexity-theory big-o memset

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

两个自动机之间的等价

哪个是确定两个自动机之间等价的最佳或最简单的方法?

即,如果给出两个有限自动机A和B,我如何确定两者是否识别相同的语言?

它们既具有确定性,也具有不确定性.

finite-automata equivalence automaton

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